<?xml version="1.0" encoding="UTF-8"?>
<otherdata xmlns="http://linux.duke.edu/metadata/other" packages="9">
<package pkgid="b0bb918c4c9a818b738741cf51a2b1e529d0bfb0c1a0755b7a83cdfa383cf67990d05e765453dff7cdff65a132677e7343b3608104ad917b533734fd7600ee9b" name="anilibria-winmaclinux" arch="src">
  <version epoch="0" ver="2.2.30" rel="2.13"/>
  <changelog author="Egor Kuznetsov &lt;egor.kuznetsov.26@gmail.com&gt;" date="1759060800">- Initial release for Anilibria</changelog>
  <changelog author="Egor Kuznetsov &lt;egor.kuznetsov.26@gmail.com&gt;" date="1759060801">- Rename anilibria.desktop to tv.anilibria.AniLibria.desktop for wayland support</changelog>
</package>
<package pkgid="eb6816f0f7c773f5879adba7b82d7d7280d252bd9bb324c31ddc7935b94d963aef333b34877872dd7e69f93fc6e24e82760aebbc4c7f0d2957a6717319ea937a" name="anilibria-winmaclinux" arch="x86_64">
  <version epoch="0" ver="2.2.30" rel="2.13"/>
  <changelog author="Egor Kuznetsov &lt;egor.kuznetsov.26@gmail.com&gt;" date="1759060800">- Initial release for Anilibria</changelog>
  <changelog author="Egor Kuznetsov &lt;egor.kuznetsov.26@gmail.com&gt;" date="1759060801">- Rename anilibria.desktop to tv.anilibria.AniLibria.desktop for wayland support</changelog>
</package>
<package pkgid="cf9e5419ee0f2164f22008141b6fb5691c62e2d7800e958524c1c286902f266d9b515f0e221040c5091f09eaf824aae30501e3dd85f7759bb5b0f23c008590c5" name="fastfetch" arch="src">
  <version epoch="0" ver="2.53.0" rel="1.10"/>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1731153600">- Update to version 2.29.0:
  * CMake (OpenBSD): enable bluetooth detection
  * CMake (NetBSD): add `/usr/pkg/lib` to rpath
  * GPU: fix build if libpciaccess is not available
  * Camera (OpenBSD): add support (?)
  * OpenGL (NetBSD): use correct so file
  * Release: 2.29.0
  * OS (BSD): don't check for debian and ubuntu variants
  * OS (Linux): fix build
  * Library (Windows): load dlls at current exe path
  * Vulkan: drop windows-i686 support
  * Logo (Builtin): add Lilidog
  * OS (Linux): detect Lilidog
  * CI: remove windows-i686
  * Doc: update changelog
  * CI (DragonFly): build with chafa &amp; libelf
  * Libc (BSD): always initialize variables
  * Libc (DragonFly): add support
  * CI: build on DragonFly
  * Netif (SunOS): fix compiling
  * Sound (DragonFly): add support
  * DiskIO (DragonFly): add support
  * Doc: update changelog
  * OS (Linux): improve performance of proxmox version detection
  * Global: support DragonFly BSD
  * Brightness (NetBSD): disable
  * Doc: update changelog
  * Logo (Builtin): update OpenSUSE Leap
  * CI (NetBSD): release NetBSD
  * CI: remove libv4l
  * NetIO (*BSD): support OpenBSD &amp; NetBSD
  * Users (OpenBSD): add support
  * DiskIO (SunOS): remove dev path
  * DiskIO (OpenBSD): add support
  * DiskIO (NetBSD): add support
  * Logo (Builtin): make aperture colorable
  * CI (OpenBSD / NetBSD): embed pci.ids
  * Processes (NetBSD): add support
  * GPU: use `pciaccess` to enumerate PCI devices
  * CMake (NetBSD): set rpath
  * CPU (Android): add QS8E
  * Bios (NetBSD): try detecting boot method
  * Shell / Terminal: fix proc path detection
  * Platform (NetBSD): fix exe path detection
  * Disk (NetBSD): fix disk size detection
  * CPU (NetBSD): add support
  * Packages (NetBSD): add support
  * Keyboard (Linux): silence compiler warnings
  * CMake (*BSD): detect videodev2
  * CI (NetBSD): try fixing build
  * CI (NetBSD): add more dependencies
  * DisplayServer (Linux): silense compiler warnings
  * Global: remove stb_printf
  * Disk (OpenBSD): fix build
  * CMake (NetBSD): detect X11 and other packages
  * Disk: support NetBSD, improve hidden partition detection
  * NetBSD: support CPUUsage / Memory / Swap
  * CMake: allow to replace native *printf to stb_*printf
  * CI: fix a copy-paste error
  * Uptime (NetBSD): fix invalid result
  * CI: try adding netbsd
  * Global: make it compile on NetBSD
  * Logo (Builtin): update PikaOS (#1361)
  * Logo (Builtin): add SummitOS
  * Logo (Builtin): add XCP-ng
  * Logo (Builtin): update OpenSuse Tumbleweed
  * Global: overall optimization
  * 3rdparty: add stb_sprintf
  * Editor: fix the Vim version detection (#1356)
  * CMake: define `NOMINMAX` on Windows
  * CMake: use 64bit time_t on Linux
  * Editor: optimize editor version parsing (#1355)
  * Packaging: update debian stuff [ci skip]</changelog>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1731931200">- Update to version 2.30.1:
  * CMake: check return code of python scripts
  * Release: v2.30.1
  * CMake: fix the destination where `fastfetch_pciids.c.inc` is generated
  * CMake: Fixed the destination where fastfetch.1 is generated. (#1403)
  * Packaging: update debian stuff [ci skip]
  * Release: v2.30.0
  * Doc: remove guix package installer as it's outdated [ci skip]
  * Display: concat flags
  * GPU (Windows): fix a bad assignment
  * Terminal (Linux): support tilix version detection
  * NetIO (BSD): remove unnecessary checks
  * NetIO (BSD): add txDrops detection if supported
  * NetIO (macOS): fix 32bit trancation
  * Scripts: `gen-man.py` honors SOURCE_DATE_EPOCH. (#1400)
  * Logo (Builtin): update openSUSE Tumbleweed
  * Doc: update changelog [ci skip]
  * Percent: in custom format, only set num and bar string if enabled in percent config
  * Doc: update schema for percent type config
  * Percent: allow use enum to set type value in JSON config
  * Global: support percent type config in module level
  * Global: pack all enums and make flag enums unsigned
  * CPU (Linux): add more Apple SOC code names
  * Host (Android): detect marketing name of vivo smartphone
  * IO (macOS): fix logo fails to load from symlinked files
  * Processing (macOS): fix exe path detection
  * Util (macOS): cleanup `cf_helpers.c`
  * CMake: use `gen-man.py` to generate man file
  * Scripts: clean up `gen-man.py`
  * Scripts: make `gen-pciids.py` executable
  * Scripts: Add python script to generate man page (#1392)
  * GPU (macOS): apply the same logic as CPU just in case
  * CPU (macOS): try fixing CPU freq detection on Apple M4
  * Media (macOS): try fixing error `CFStringGetCString() failed`
  * Smbios: clean up more garbage values
  * StringUtil: rename `ffStrCopy` and correctly reflect its usage
  * Shell (macOS): try fixing segfault in old macOS
  * DisplayServer (NetBSD): detect WM / DE by process name
  * Packages (Linux): add qi support
  * Revert "IO: optimize createSubfolders (#1382)" (#1390)
  * tests: add FFstrbuf smallest allocation test &amp; minor fix (#1387)
  * Logo (Builtin): add cosmicDE logo (#1386)
  * Doc: fix typo in README (#1385) [ci skip]
  * OS (Android): display android icon
  * Logo (Builtin): add Unifi
  * CPU (OpenBSD): support CPU temp detection
  * Disk: be able to print disk indices
  * Battery: don't print index in multi-battery device
  * Sound (BSD): trim device names
  * Version (MidnightBSD): support libc version detection
  * Packages (BSD): support mport
  * Logo (Builtin): add MidnightBSD
  * FFstrbuf: fix small FFstrbuf allocations in ffStrbufEnsureFree (#1383)
  * IO: optimize createSubfolders (#1382)
  * DisplayServer: fix deprecation warnings
  * Host (macOS): add HwModel support for new Mac (2024) (#1381)
  * Bluetooth (Windows): detect battery level
  * Bluetooth (Windows): detect battery (WIP)
  * Logo (Builtin): fix Lilidog
  * FFstrbuf: correct definition of `StrStrIA`
  * Bluetooth (Windows): fix mac address detection
  * CMake: Add initial support for MidnightBSD (#1377)
  * Bluetooth (macOS): normalize mac address strings
  * Bluetooth (macOS): support battery level detection
  * Monitor: don't display `()` if display name is not available
  * Display: add `hdr-compatible`
  * Packaging: update debian stuff [ci skip]</changelog>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1733227200">- Update to version 2.31.0:
  * Display (Linux): detect bit depth when libdrm is used
  * Terminal: Support sakura version &amp; font detection
  * Release: v2.31.0
  * Processing (Linux): interrupt poll &amp; read syscalls when the child process is exited
  * Wifi (Linux): detect Wifi-7
  * Wifi (Windows): make unit of bitrates be consistant
  * Completion (Zsh): fix syntax error in completion file (#1421)
  * WM (Linux): fix wl-restart parsing (#1422)
  * Logo (Builtin): add Windows Server 2025
  * GPU (Linux): detect GPU NV type
  * CPU (Windows): code cleanup
  * CPU (Linux): support up to 128-socket boards
  * CPU: change `cpuCount` to `packages`; support custom format
  * CPU: remove duplicate whitespaces in CPU name
  * CPU (Linux): refactor; fix cpu count detection
  * Support for dual CPU systems  (#1417)
  * CI: fix building on macOS
  * Display (macOS): don't crash with NULL pointer references
  * Logo (Builtin): update MidOS
  * OS (Linux): check for lmde
  * Scripts: use datetime to get date and set timezone to UTC (#1410)
  * Display: change physical size detection to use basic display parameters
  * Users: fix invalid var name
  * Wifi (FreeBSD): support channel &amp; frequency detection
  * Wifi (Android): silence compiler warnings
  * Chore: silence some warnings
  * Wifi (Android): report more props
  * Wifi: print channel band
  * Wifi (Linux): detect frequency &amp; channel number
  * Wifi (macOS): fix build on old OS version
  * Display: report ppi to 0 if screen size is not available
  * Wifi: detect channel and frequency
  * Display: don't report screen size when display is mirrored
  * CMake: fix possible linking errors in `BINARY_LINK_TYPE=dynamic` mode
  * Display (Linux): fix preferred resolution detection for wayland
  * Display (FreeBSD): fix build
  * Display: print preferred resolution &amp; refresh rate in custom format
  * Display: add scale factor in custom format
  * Display (Android): fix build
  * Display (Windows): detect preferred resolution &amp; refresh rate
  * Display (macOS): detect maximum resolution &amp; refresh rate
  * Display (Linux): detect preferred resolution and refresh rate
  * DisplayServer (Linux): remove support of xcb &amp; xlib
  * Wifi (Linux): improve performance
  * DBus: use `general.processingTimeout` as its timeout instead hard coding
  * Media (Linux): improve performance of dbus communication
  * mtgpu: header file cleanup for forward compatibility (#1405)
  * Packaging: update debian stuff [ci skip]</changelog>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1734523200">- Update to version 2.32.1:
  * Release: v2.32.1
  * Packages (OpenBSD): fix a typo that prevents package counting from working
  * Packaging: update debian stuff
  * Release: v2.32.0
  * Revert "Display (Linux): prefer detecting physical size from EDID"
  * Wifi (FreeBSD): early break if the interface is not associated
  * WM (Linux): added ratpoison window manager (#1442)
  * Version: fix format parameter name
  * Logo (Builtin): improved debian ascii logo (#1441)
  * OpenGL (NetBSD): try fixing build
  * Display (FreeBSD): don't try to use `/sys` on FreeBSD
  * WM (FreeBSD): improve WM detection for Wayland
  * OpenGL (NetBSD): fix build
  * OpenGL (EGL): prefer surfaceless display
  * Add Armbian-unofficial detection (#1436)
  * Logo (Builtin): add Ultramarine Small
  * WM (OpenBSD): fix process enumeration
  * Display (Linux): clean up
  * WM: add support for fvwm (OpenBSD) and ctwm (NetBSD)
  * Scripts: fix typo
  * OpenGL (Linux): suppress IO
  * CPU (ARM): add more apple cores
  * CPU (Linux): detect Virtualized Apple Silicon
  * Doc: update changelog [ci skip]
  * Logo (Builtin): add Serpent OS
  * JsonSchema: fix typo
  * OS (Linux): detect Linux Lite
  * JsonSchema: add documentation of format args
  * Fastfetch: add `-h format-json`
  * Global: refactor code of `-h &lt;module&gt;-format`
  * Host: silence compiler warnings
  * Host (Sun): fix build
  * Host: detect mac model in FreeBSD &amp; Windows
  * Edid: use screen size in DTD if make sense
  * Host (Linux): report mac product name
  * Wifi (Linux): fix bssid formatting
  * Logo: randomly select one if the logo source expands to multiple files
  * GPU (OpenBSD): fix `pci.ids` file location
  * Packaging: update debian stuff [ci skip]</changelog>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1735214400">- Update to version 2.33.0:
  * Release: v2.33.0
  * Doc: update changelog [ci skip]
  * Media (Linux): set player name manually for musikcube
  * Logo (Builtin): add GoralixOS
  * Media: make it able to print player info in custom format
  * Media (Linux): report player name
  * Vulkan (Android): hard code path of `libvulkan.so`, so that users don't need to install vulkan-loader wrapper of termux
  * Media (Linux): Fix #1461 (WIP)
  * Doc: update changelog [ci skip]
  * Logo (Builtin): add NurOS
  * Doc: add comments for running fastfetch in root
  * DiskIO (OpenBSD): remove debug output
  * PhysicalMemory: clean up garbage data
  * CPU (NetBSD): fix typo
  * Battery (OpenBSD): fix build
  * Battery (NetBSD): add support
  * Bluetooth (BSD): disable
  * CPU (NetBSD): trim CPU vendor
  * Brightness (NetBSD): don't error out if the screen idx isn't 0
  * Version (NetBSD): report sysname
  * CPU (NetBSD): support temp and frequency detection
  * SMBIOS (NetBSD): add more data
  * Battary (NetBSD): some basic investigation of acpi battery detection
  * Battery (OpenBSD): add support
  * Brightness (OpenBSD): add support
  * Brightness (NetBSD): add support for builtin display
  * Bluetooth (Windows): silence compiler warnings
  * CMake: Add a cmake option to make flashfetch target optional (#1455)
  * PhysicalDisk (Linux): fix interconnect type detection
  * Bluetooth (Linux): improve performance
  * TerminalShell (Android): ignore proot
  * Bluetooth (Windows): optimise
  * Bluetooth (macOS): don't report disconnected devices if `showDisconnected == false`
  * Bluetooth (Linux): improve performance when `showDisconnected == false`
  * BluetoothRadio (Linux): improve performance by reducing size of dbus response
  * FFlist: fix return value of `ffListPop`
  * OS (Linux): Refactor Armbian version detection and add support for ubuntu-based armbian detection (#1447)
  * Shell (Windows): use $POWERSHELL_VERSION if available</changelog>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1736596800">- Update to version 2.34.0:
  * Media (Linux): remove unused variables
  * Doc: update JSON schema [ci skip]
  * Processing (Windows): fix get current process
  * OpenGL (EGL): try GLES 2.0+; then fallback to 1.1 if failed
  * Release: v2.34.0
  * OpenGL (Android): enable support
  * OpenGL (Android): request GLES 2+
  * Battery (NetBSD): fix battery percentage detection
  * Packages (Linux): rename am-user to appman
  * Packages (Linux): remove possible final newlines in am config
  * General: don't suppress the output of `preRun`
  * Packages (Linux): support am-user
  * WMDE: detect Sway by env variables
  * CPU (Android): check for MTK D9X00 SOCs
  * feat: Add Rhino Linux ASCII (#1487)
  * CMake (Android): set rpath for system Android libs
  * Sound: detect platform API
  * Processing (Windows): early return if `OpenProcess` failed
  * Logo (Builtin): add snigdhaos ascii (#1485)
  * fixing fastfetch wrong colors for xray_os logo (#1486)
  * Doc: update changelog [ci skip]
  * CI (Linux): add Linux ppc64le platform (#1484)
  * CPU (Linux): fix var content was unexpectedly modified
  * OS: prefer pretty names
  * CPU: fix core count output in multi-package platforms
  * CPU (Linux): detect TZ temp if CPU temp is not available
  * Packages (macOS): remove redundant tokens
  * Logo (Builtin): add the Lubuntu logo (#1481)
  * Doc: update README [ci skip]
  * FFstrbuf: improve performance of copying static strings
  * Terminal (Linux): fix detection of `pk-command-not-found`
  * TerminalShell (Linux): relax detection of terminals in NixOS
  * Doc: update README.md
  * Logo (Image): mark ghostty supports kitty image protocol
  * TerminalSize (Linux): enable fast path when stdout is redirected.
  * WM (Linux): detect WM version
  * WM (Linux): add sway version detection
  * Terminal (macOS): improve performance of kitty version
  * WM (Windows): detect version of DWM
  * WM (Linux): don't crash if no wm is detected
  * WM (macOS): add WindowServer version detection
  * WM: report version field in custom and JSON output
  * WM: Add support for detecting window manager versions, add support for Hyprland version (#1472)
  * Logo (Image): add `--kitty-icat`; honor `--logo-height` if set
  * Logo (Image): support generate image data via `kitten icat`
  * Revert "GPU: support detection by EGLext"
  * Brightness (FreeBSD): fix backlight name detection
  * TerminalFont (macOS): fix ghostty font detection; default to `JetBrains Mono`
  * Platform (Linux): fix exe path detection (#1468)
  * Bluetooth (DragonFly): disable module to fix build
  * GPU (EGLext): fix build on old systems
  * TerminalFont: support Ghostty
  * GPU: rename `ffGetGPUVendorString` to `ffGPUGetVendorString`
  * GPU: support detection by EGLext
  * Bluetooth (FreeBSD): add support (not tested)
  * CI: update *BSD versions
  * Host (macOS): fix thunderbolt version of new MBPs
  * Packaging: update debian stuff [ci skip]</changelog>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1736769600">- Update to version 2.34.1:
  * Sound: fix a memleak
  * Chore: fix spelling
  * CPU (BSD): improve base freq detection
  * Release: v2.34.1
  * fix(logo): Rename *_LOGO_SMARTOS to *_LOGO_SNIGDHAOS (#1502)
  * Logo (Builtin): add Oreon
  * Logo (Builtin): add HeliumOS
  * Memory (NetBSD): change formula to be consistant with other systems
  * Memory (OpenBSD): update formula to be consistant with other systems
  * Logo (Builtin): add netbsd_small
  * CI: fix build
  * DisplayServer (Linux): upgrade wayland protocol `kde-output-device-v2`
  * DisplayServer (Linux): check HDR support with `xx_color_manager_v4_interface` (WIP)
  * Media (Linux): use file name as media name if song title is not available
  * CPU (FreeBSD): bind process to the first 2 cores
  * chore: remove unnecessary NULL checks
  * TerminalFont (macOS): fix Ghostty termfont detection
  * GPU: set GPU vendor string when using OpenGL backend
  * Packaging: update debian stuff [ci skip]</changelog>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1737892800">- Update to version 2.35.0:
  * Thread: optimise locking (unused though)
  * CPU (Linux): add comments
  * Release: v2.35.0
  * PhysicalDisk: change temp range to 50-70 °C
  * Doc: update changelog again [ci skip]
  * Doc: update changelog [ci skip]
  * Doc: update json_schema [ci skip]
  * Doc: update changelog [ci skip]
  * Disk / Users: support duration printing in custom format
  * Doc: update changelog
  * CPU (Android): add QS8E for Galaxy
  * CMake: add option `-DCUSTOM_LSB_RELEASE_PATH`
  * OS (Linux): acquire more os info from lsb-release if missing from os-release
  * Logo (Builtin): fix more escape problems
  * Logo (Builtin): fix OpenBSD &amp; OpenBSD_small
  * Logo (Builtin): Add KDE Linux logo (#1523)
  * CPU (Android): detect new QS8E
  * CPU (Linux): detect SOC name on RISCV
  * Doc: update changelog [ci skip]
  * Presets: fix percentage number printing in examples/20 [ci skip]
  * Disk (NetBSD): silence compiler warnings
  * Doc: update feature_request issue template
  * Display (Linux): return reason if errored
  * Packages: fix file type check
  * Packages (SunOS): fix building
  * Packages: add pkgsrc; code refactor
  * Doc: update issue templates [ci skip]
  * CI: add linux-armv6
  * OpenGL: suppress output of EGL again
  * Doc: update more issue templates [ci skip]
  * Doc: split bug report issue template into smaller parts [ci skip]
  * CPU (Linux): query SOC name in cpuinfo for aarch64
  * TerminalShell (Linux): ignore proot
  * Logo (Builtin): update netbsd small
  * Logo (Builtin): add Arch Old
  * Chore: forbid using of VLAs
  * Packaging: update debian stuff [ci skip]</changelog>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1739448000">- Update to version 2.36.1:
  * Release: v2.36.1
  * CI: fix typo
  * CMake (Haiku): set `_GNU_SOURCE`
  * Logo (Builtin): fix Chimera Linux distro name to match ID (#1554)
  * Logo (Builtin): correct shape of ALT Linux (#1553)
  * CI: build with chafa &amp; ddcutil (aarch64)
  * CI: update artifact names of armv6l and armv7l
  * Doc: update readme
  * CI (Linux): use native aarch64 runner
  * CI (NetBSD): update OS version to 10.1
  * Packaging: update debian stuff [ci skip]
  * CI: add linux-s390x
  * CPU: remove useless `w/ Radeon 780M Graphics`
  * Terminal (Linux): improve performance of Tilix version detection
  * Release: v2.36.0
  * OpenGL (Haiku): enable support
  * Format: support syntax of `{$ENV_VAR}` in custom format
  * Logo (Builtin): KDE -&gt; KDE Neon
  * Doc: update changelog [ci skip]
  * OS (Linux): combine all armbian variants (#1547)
  * CPU (Linux): loosely detect cpu name of unknown platform
  * CPU (Linux): add cpu name detection for s390x
  * Display: capitalize `{type}`'s output (#1543)
  * Logo (Builtin): split `ID_LIKE` before using
  * CPU (Linux): support physical core count and package count detection on loongarch
  * Logo (Builtin): update some distro names
  * Logo (Builtin): simplify RebornOS
  * Logo (Builtin): fix color of Haiku in light mode
  * Shell (OpenBSD): trim `-` for login shells
  * CPU (Linux): detect for `model name` on unknown platform
  * Doc: update license
  * CMake (Haiku): fix build
  * Processing (Unix): better `pipe2(2)` existance check
  * Camera (macOS): make fastfetch compiled on newer macOS versions runs on older ones
  * GPU (macOS): use `recommendedMaxWorkingSetSize` as total GPU mem size
  * GPU (Nvidia): fall back to `nvmlDeviceGetMemoryInfo` if `nvmlDeviceGetMemoryInfo_v2` isn't supported
  * Temps (macOS): support M4x
  * Packaging: update debian stuff [ci skip]
  * Logo (Builtin): remove left padding of filotimo
  * Logo (Builtin): add filotimo logo (#1535)
  * Logo (Builtin): add Nexa Linux logo (#1539)
  * Chore: use `ffStrEquals` instead of `strcmp`
  * CMake (Haiku): fix an invalid file name
  * Chore: fix typo
  * Haiku: minimal implementation (#1538)
  * Logo (Builtin): change arch_old logo colours to be more accurate to the actual original logo.
  * Disk (BSD): silence compiler warnings
  * CMake (OpenBSD): remove pulseaudio detection
  * Sound (NetBSD): use kernel APIs instead of the OSS wrapper
  * CPU (Linux): fix build on PPC
  * Sound (OpenBSD): Use sndio instead of pulseaudio
  * CPU (Linux): rework cpuinfo parsing
  * Sound (NetBSD): don't assume readlink reports file name only
  * Sound (NetBSD): use OSS instead of pulseaudio
  * Sound (FreeBSD): report OSS ABI version</changelog>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1740052800">- Update to version 2.37.0:
  * Doc: fix typo in changelog [ci skip]
  * Release: v2.37.0
  * OS (Haiku): calcuate OS version
  * Version: report more CPU arches
  * OS (Haiku): report pre version as `-`
  * CPU (NetBSD): support non-intel CPUs
  * CMake (Haiku): enable more optional dependencies
  * OS (Haiku): detect OS beta version
  * Processing (Haiku): fix exe detection
  * GPU (Haiku): silence warnings
  * Haiku: fix building
  * Doc: update changelog [ci skip]
  * Packages (Haiku): rename package manager name to `hpkg`
  * PhysicalDisk (Haiku): fix drive size calcuation
  * Disk (Haiku): report all partitions
  * Shell (Haiku): fix arg0 detection
  * IO (Haiku): access `/path/to/file/` doesn't work. Work around it
  * LocalIP: fix `--localip-default-route-only false not working with --gen-config`
  * Bios (Haiku): report BIOS type
  * Terminal (Haiku): detect terminal version
  * PhysicalDisk (Haiku): fix SCSI drive detection
  * OpenGL (Haiku): report platform API
  * Smbios: add comments about UEFI systems [ci skip]
  * OpenGL (Haiku): add support
  * Chore: remove unused `#include`s
  * GPU: add missing variable inits
  * Bluetooth (Haiku): suppress debug output of system API
  * PhysicalDisk (Haiku): report drive type
  * Presets: print keyboard &amp; mouse in all.jsonc
  * Bluetooth (Haiku): WIP
  * Gamepad (Haiku): enable
  * PhysicalDisk (Haiku): add support
  * CPUUsage (Haiku): add support
  * Gamepad (Haiku): add support
  * Disk (Haiku): code cleanup; honor `option-&gt;folders`
  * Mouse / Keyboard (Haiku): code cleanup; ignore disabled devices
  * NetIO (Haiku): code cleanup
  * NetIO (Haiku): add support
  * Keyboard (Haiku): add support
  * Mouse (Haiku): add support
  * Sound (Haiku): fix runtime error getting mute status
  * Smbios: don't try to scan memory multiple times
  * Revert "Host (Haiku): add debug log"
  * Smbios (NetBSD): add support
  * Sound (Haiku): Init variables unconditionally; fix mute handling
  * InitSystem (Haiku): add support
  * Sound (Haiku): add support
  * Haiku: 32bit fixes
  * Host (Haiku): add debug log
  * Terminal (Haiku): fix konsole version detection
  * Chore (Haiku): silence compiler warnings
  * Smbios (Haiku): add support; enable related modules
  * StringUtils: fix a possible segfault
  * PhysicalMemory: fix `--format json` printing
  * Sound: properly round percent values
  * Weather: honor `display.temp.unit`
  * Battery (Haiku): fix capacity calculation
  * CI: enable `-DENABLE_EMBEDDED_AMDGPUIDS=On`
  * Battery (Haiku): add support (untested)
  * Battery (Haiku): add stub file
  * Logo (Builtin): simplify haiku; add haiku2 from neofetch
  * Uptime (Haiku): silence compiler warnings
  * InitSystem (Haiku): enable support
  * Processing (Haiku): support exe path detection
  * GPU (Haiku): use system API to fetch PCI devices
  * GPU: support embedding amdgpu.ids into fastfetch
  * GPU (Haiku): change the path of pci.ids to hwdata
  * TerminalFont (Haiku): support Haiku Terminal
  * Terminal (Haiku): add pretty name for Haiku Terminal
  * GPU (Haiku): add pci.ids file path
  * Doc: update README.md (#1557) [ci skip]
  * Scripts: download pci.ids by cmake; remove `python-requests` dependency
  * Logo (Builtin): update Rosa linux logo (#1559)
  * OS: remove option `--escape-bedrock`
  * Media (Haiku): enable support
  * Terminal (Haiku): add basic support
  * Display (Haiku): code cleanup; detect manufacture date
  * OS (Haiku): silence warnings
  * Media (Haiku): enable support
  * Sound (Haiku): add stub file
  * Disk (Haiku): add support
  * CPU (Haiku): add support
  * CMake (Haiku): add more optional dependencies
  * Display (Haiku): trim monitor name
  * GPU (Haiku): add support
  * GPU (macOS): fix build error in MacOS 10.13 (#1556)
  * Packaging: update debian stuff [ci skip]</changelog>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1741435200">- Update to version 2.38.0:
  * CI: try fixing CI failures
  * Release: v2.38.0
  * Chore: update image logo
  * Camera (macOS): silence compiler warnings
  * Camera (macOS): fix crashing on old macOS version
  * CI (macOS): remove CodeQL
  * Logo (Builtin): Add Shebang Linux (#1592)
  * Doc: update supported platforms
  * Logo (Builtin): update fastfetch logo to match the svg one
  * Chore (Windows): set exe file icon to fastfetch logo
  * Logo: add fastfetch logo
  * Doc: fix `SI` size prefix description
  * Doc: update changelog [ci skip]
  * Camera (macOS): try fixing segfault in macOS 10.15
  * Brightness: detect &amp; print screen type
  * Terminal (Linux): support termite version detection
  * TerminalFont (Linux): support termite terminal (#1588)
  * JsonSchema: update format json [ci skip]
  * Packages (Linux): Add support for Pisi Linux (#1580)
  * GPU: support percentage num &amp; bar in custom format
  * Logo (Builtin): simplify
  * Logo (Builtin): Added Bedrock Linux small ASCII logo (#1582)
  * Bootmgr (Linux): fix secure boot testing
  * Logo (Builtin): simplify os names
  * OS (Linux): fix VanillaOS detection
  * Builtin (Logo): simplify linuxmint handling
  * Logo (Builtin): add opensuse-tumbleweed_small
  * Disk: add `{mountpoint}` and `{mount-from}` in custom output format
  * Presets: fix OS key in examples/25
  * DateTime (Windows): fix day-pretty output in custom format
  * Presets: add a new example
  * OS: allow customize key format with kernel name and distro name
  * Battery: add missing `{icon}` in key format
  * Chassis (macOS): add support
  * JsonSchema: update format schema
  * Battery (Haiku): handle empty slots
  * Packaging: update debian stuff [ci skip]</changelog>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1742558400">- Update to version 2.39.1:
  * Release: v2.39.1
  * Networking: request HTTP/1.0, as we don't support chunked response
  * Packaging: update debian stuff [ci skip]
  * Packages (Linux): add pkgsrc detection
  * Logo (Builtin): add NetBSD2
  * Display (Linux): fix the error check for ffReadFileData (#1622)
  * Release: v2.39.0
  * Networking (FreeBSD): support fast path without TFO enabled
  * Networking: don't enable TFO if server doesn't support it
  * Networking: don't enable HTTP compression if server doesn't support it
  * Networking (Linux): remove unnecessary variables
  * Networking (Linux): don't generate SIGPIPE
  * Networking (Windows): more verbose log
  * Networking (macOS): support TFO
  * Networking (BSD): support TCP_FASTOPEN
  * Completion (Bash): Use `fastfetch --help-raw` for auto-completion
  * Networking (Windows): print readable error message
  * Networking (Windows): fix libz loading; use TCP_FASTOPEN if available
  * Networking: silence compiler warnings
  * Networking (Linux): handle a case when `sendto()` reports `EINPROGRESS`
  * Networking: move files to a sub folder
  * Networking (Windows): apply the same optimizations of *nix's
  * Netif (Windows): use `GetIpForwardTable2` to support IPv6
  * Networking (Linux): improve performance by TFO and response compression
  * Netif (DragonFly): use code of OpenBSD
  * NetIF (OpenBSD): fix default route detection
  * Doc: update changelog [ci skip]
  * Wifi (macOS): remove usage of Apple80211
  * Completions (Bash): remove `--lib-*`
  * OpenGL: drop OSMesa backend
  * Logo (Builtin): add Bredos
  * Logo (Builtin): Change FoxOS to WolfOS (#1534)
  * Terminal (Windows): detect warp version
  * Wifi (macOS): improve performance of SSID detection on Sequoia
  * Packaging: update debian stuff [ci skip]
  * Kmod (NetBSD): add `__attribute__((__packed__))` to ensure memory layout
  * CI: remove unnecessary deps
  * Logo (Builtin): Add Common Torizon OS as a variant
  * Display (Windows): prefer `DISPLAYCONFIG_DEVICE_INFO_GET_ADVANCED_COLOR_INFO_2`
  * Kmod (NetBSD): add support</changelog>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1743681600">- Update to version 2.40.0:
  * WM (Linux): fix https://github.com/fastfetch-cli/fastfetch/issues/1657#issuecomment-2772749780
  * WM (Linux): query Hyprland version from hyprland dev header
  * Binary: add comments
  * WM (Linux): correctly fall back to calling `wm --version` if `ffBinaryExtractStrings` fails
  * CI: remove Dragonfly BSD
  * WM (Linux): fix (?) Hyprland version detection
  * Release: v2.40.0
  * Uptime: round seconds to the nearest minute
  * DisplayServer (Linux): silence compiler errors
  * Util (Windows): fix mem leaks
  * Util (Windows): fix possible errors in `Unicode.c`
  * Util (Linux): fix executable file check
  * FFlist: use `uint8_t` instead of `char` to store raw data
  * Threading: fix timeout calcuation
  * Netif (Linux): support default route detection for ipv6
  * Wifi: fix code smells
  * PhysicalMemory (Linux): code refactor
  * Users (Linux): support IPv6 client addr
  * Users (Windows): support IPv6 client IP
  * Uptime (NetBSD): fix boot time calcuation
  * TPM (macOS): add support
  * InitSystem (Haiku): set pid=0 if fails to detect init pid
  * Doc: update changelog [ci skip]
  * Revert "CI: build in debug mode"
  * Swap (Windows): support multiple paging files
  * Swap (OpenBSD): fix mem leaks
  * Swap: fix code smells
  * Sound: fix typo and mem leaks
  * Doc: update changelog [ci skip]
  * Chore (Windows): silense compiler warnings
  * fastfetch: load config from fastfetch binary path
  * Logo (Ascii): Change Nexa Linux logo (#1653)
  * Logo (Builtin): change name of  Xray-OS
  * Terminal (Windows): fix file version detection
  * CI: build in debug mode
  * GPU (Windows): fix max frequency detection for AMD ODN
  * GPU (Windows): use ODN as OD7; fix `ADL2_Overdrive8_Current_Setting_Get` call and some other bugs
  * Doc: update changelog [ci skip]
  * TerminalFont (Windows): support Warp Terminal
  * GPU (Windows): try more OD funcs; add more verbose logs
  * Disk (macOS): silense compiler warnings
  * DNS (macOS): detect DNS entries by SystemConfiguration
  * DNS (Linux): add systemd-resolved support; add verbose logs
  * Media: fix code smells
  * Gamepad / Keyboard / Mouse (FreeBSD): break detection earlier
  * Keyboard (FreeBSD): fall back to KDGKBINFO if usbhid fails
  * Gamepad / Mouse / Keyboard (FreeBSD): fix memleaks
  * Host (Windows): fix build on WoA
  * GPU (Windows): actually use correct OD fns for recent AMD GPUs
  * GPU (Windows): add `OverdriveN` functions for AMD
  * GPU (Windows): fix `ADL2_Adapter_AdapterInfoX3_Get` result test
  * GPU (Windows): added verbose logs
  * Global: fix code smells
  * Host (macOS): add new models; fix an invalid model ID
  * Chore: fix code smell
  * Disk (SunOS): remove creation time detection support
  * Util/debug: add missing `#pragma once`
  * Separator: fix `outputColor` doesn't work when `length` is set
  * Chore: fix a lot code smell
  * LocalIP: change `{name}` to `{ifname}` in `--localip-key-format` for consistancy
  * GPU: fix code smell
  * GPU (General): fix GPU device type detection
  * Battery (NetBSD): report remaining time
  * Battery (Linux): fix critical state detection
  * Battery (macOS): fix manufacture date detection
  * GPU (macOS): fix code smell
  * CPU (Linux): fix CPU detection on some PPC platforms (#1640)
  * GPU (Windows): fix code smells
  * GPU: update JSON result structure; fix segfault and memleaks
  * GPU (Windows): support VMEM type detection via nvapi
  * GPU (Windows): rewrite implementation for AMD GPUs using ADL SDK
  * GPU (Windows): support memory type detection for Intel dGPUs
  * GPU: prepare for memory type &amp; shared memory usage detection
  * GPU (Windows): add display-library for future use
  * IO: don't suppress IO in debug mode
  * Bootmgr: report boot order
  * Smbios (OpenBSD): add comments for UEFI systems [ci skip]
  * Logo (Builtin): fix opensuse-tumbleweed_small
  * Wifi (Linux): add verbose logs
  * Wifi (DragonFly): fix building
  * Bootmgr (BSD): add support for OpenBSD and NetBSD
  * BIOS (OpenBSD): check bios type
  * Smbios: add verbose debug logs
  * Smbios (OpenBSD): add support for legency BIOS
  * util/debug: add missing headers
  * Wifi (FreeBSD): use ioctl to improve performance
  * Logo (Builtin): Change WiiLinuxNgx to more generic name (#1633)
  * Packaging: update debian stuff [ci skip]
  * Terminal (macOS): fix Warp Terminal pid detection
  * Presets: update examples/{24,26} [ci skip]</changelog>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1744372800">- Update to version 2.40.4:
  * Release: v2.40.4
  * Fastfetch: fix loading presets in `{exePath}/presets`
  * WM (Linux): remove `v` from Hyprland version
  * Logo (Image): mark kitty image protocol support for warp terminal on macOS
  * Release: v2.40.3
  * Fastfetch: fix loading example configs from presets directory
  * Release: v2.40.2
  * Doc: fix CI errors (2)
  * Doc: fix CI errors
  * Doc: migrate some help texts to Github Wiki pages
  * Doc: update documents
  * Doc: update README
  * Fastfetch: enforce `.jsonc` extension when loading config file
  * Logo (Image): default to kitty protocol in warp terminal
  * Release: v2.40.1
  * Logo: don't try to find files named `-`
  * IO: remove fast path of `ffPathExists`, which causes too many problems
  * TPM (macOS): fix compiling error on old system
  * Packaging: update debian stuff [ci skip]</changelog>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1749729600">- Update to version 2.45.0:
  * Release: v2.45.0
  * Swap (Haiku): detect detailed info
  * Chore (Haiku): don't use hard-coded page size
  * Disk (BSD): silence compiler warnings
  * Swap (DragonFly): add support
  * Swap (SunOS): detect detailed info
  * Swap (OpenBSD): detect detailed info
  * Swap (Linux): add fallback for Android
  * Swap (Linux): support detailed info
  * Swap (FreeBSD): detect detailed info
  * Swap (macOS): detect detailed info
  * Swap: support separated output
  * Swap (Windows): detect detailed info
  * Smbios (DragonFly): acquire SMBIOS info from `/dev/mem`
  * DE (DragonFly): fix build
  * Swap (Linux): use `/proc/swaps`
  * CI (Linux): fix musl build
  * CI (Linux): add missing deps for musl
  * Logo (Builtin): Update logo for Xenia Linux (#1783)
  * Disk (BSD): don't ignore sshfs
  * Packages (Linux): fix dnf package count detection (v2)
  * Packages (Linux): fix dnf package count detection
  * CI: add back disabled DFBSD
  * CMake: fix build of FreeBSD
  * Disk (Linux): don't ignore sshfs
  * CI (Haiku): add build
  * CMake: build FreeBSD `pkg` package
  * Logo: support `"type": "command-raw"`
  * Chore: tidy
  * Fix typo, 15,2 isn't a real mac model number
  * DE (FreeBSD): support KDE version detection
  * Logo (Builtin): add void2
  * Logo (Builtin): update default colors of voidlinux
  * Logo (Builtin): add rhel_small
  * WM: support I3 version detection
  * WM: support FVWM version detection
  * WM: support CTWM version detection
  * Logo (Builtin): add Starry Linux
  * Chore: code cleanup
  * GPU: add more GPU vendors
  * JsonSchema: update `&lt;module&gt;Format` [ci skip]
  * Packages: split code
  * Packaging: update debian stuff [ci skip]
  * Host (Android): add detection for OnePlus market name
  * Release: v2.44.0
  * DisplayServer (Linux): fix errors on KDE beta
  * Disk: add `--disk-hide-fs`
  * Disk: rename `hiddenFolder` to `hideFolder`; add docs
  * Disk: add `hiddenFolders` (2)
  * Logo (Builtin): Add UBLinux Logo (#1764)
  * Disk: add option `--disk-hidden-folders`
  * Disk (Linux): don't hard code hidden mount points
  * TerminalShell (Linux): ignore `script`
  * Logo (Builtin): Add Kylin Logo (Remove ANSI codes) (#1760)
  * Stat: use `ESC 7/8` instead of `CSI s/u`
  * Doc: Add information of where to find example config files (#1759) [ci skip]
  * fish complete: add `--logo-color-[1-9]` completion (#1754)
  * Packaging: update debian stuff [ci skip]
  * CI: silence spell check errors
  * GPU (Linux): embed asahi_drm.h
  * 3rdparty (yyjson): upgrade to 0.11.1
  * PhysicalDisk: trim white spaces of serial
  * Doc: update changelog
  * Media (Windows): detect player name (UMP apps only)
  * Doc: update changelog
  * GPU (AMD): remove usage of `ADL2_Adapter_VRAMUsage_Get`
  * Release: v2.43.0
  * Revert "Vulkan: use `VK_API_VERSION_*` instead of deprecated `VK_VERSION_*`"
  * Sound (macOS): report the volume of muted device as 0%
  * Sound: don't show 255 in custom format
  * Vulkan: use `VK_API_VERSION_*` instead of deprecated `VK_VERSION_*`
  * GPU (Linux): fix CI errors
  * GPU (Linux): detect core usage when libamdgpu is not available
  * GPU (Linux): detect VRAM type of AMD GPUs
  * Smbios: fix transitive include for `loff_t` (#1746)
  * GPU (AMD): seems `ADL2_Adapter_VRAMUsage_Get` reports system mem usage only, not full memory usage
  * GPU (AMD): more verbose logs
  * GPU: don't hide unknown type of GPUs by default
  * Smbios: discard usless values
  * Media (Linux): fix duplicated playback status
  * GPU (Windows): fix incorrect used shared memory size
  * Memory / Swap: always initialize local variables
  * GPU: optionally hide unknown GPUs (#1742)
  * Logo (Builtin): add Hydra Framework logo (#1740)
  * Builtin (Logo): new AthenaOS logo
  * Logo (Builtin): `sd '\$\{c(\d)\}' '$$$1' *`
  * TerminalShell: use ffBinaryExtractStrings result as possible (#1739)
  * DisplayServer (Linux): fix xcb_connect error handling (#1735)
  * 3rdparty: upgrade yyjson to 0.11.0
  * Media (macOS): support macOS 15.4
  * GPU (Linux): fix asahi linux support again
  * Disk (Linux): fix possible bug on 32-bit platforms
  * CPU (FreeBSD): simplify physical core count detection
  * CPU (SunOS): support physical core count and package count detection
  * Display: use height to calculate scale factor
  * CPU (Windows): always use `XxxW`
  * Global: Improve `ARRAY_SIZE` macro using `__is_array`
  * Parsing: silence compiler warnings
  * Packaging: update debian stuff [ci skip]
  * Wifi (NetBSD): fix the ambiguous comment
  * Wifi (BSD): correctly prioritize Wi-Fi protocol detection
  * Release: v2.42.0
  * BIOS: normalize the module name
  * Uptime: fix non-normalized time being shown
  * Global: use ARRAY_SIZE (#1718)
  * Bluetooth (Linux): silence an unused variable warning (#1717)
  * Platform: fix a memory leak (#1716)
  * Doc: update changelog [ci skip]
  * Logo (Chafa): fix setting `chafa.symbols`
  * Camera (OpenBSD): add support
  * CPU (OpenBSD): fix CPU temperature detection
  * Refactor: inline printError into ffPrintError and remove unused static helper
  * Wifi (FreeBSD): fix possible mem leaks
  * Wifi (NetBSD): add support
  * Wifi (OpenBSD): fix file name
  * CPU (NetBSD): add one more method to detect CPU frequency
  * CPU (SunOS): detect CPU temp
  * Logo (Builtin): Add Codex Linux support (#1701)
  * Logo (Builtin): remove GoralixOS
  * Logo (Builtin): add Aurora
  * PhysicalDisk (Linux): don't detect disk type of virtual disks
  * T2/SDE: upstreaming downstream's logo change (#1695)
  * Color: support #RGB and #RRGGBB
  * Packaging: update debian stuff [ci skip]
  * Processing (Windows): fix macro name `__aarch64__`
  * Chore: remove Chinese comments [ci skip]
  * CI (Linux): enable chafa on Linux aarch64
  * CI (Linux): bump GH runner for linux-amd64
  * Release: v2.41.0
  * Bluetooth (NetBSD): add base implementation
  * Doc: add installation instructions for pkgsrc [ci skip]
  * Uptime (Windows): use `QueryUnbiasedInterruptTime`
  * CMake: use mincore on WoA
  * Processing (Windows): use `GetOverlappedResultEx` on WoA
  * CI (Windows): add WoA
  * GPU (Linux): add temp detection for Intel GPU
  * NetIO (Linux): use `openat`
  * Logo (Builtin): Add 2 more Alpine logos (#1687)
  * CPU (Linux): fix build
  * Chore: simplify `fastfetch.h`
  * Wifi (FreeBSD): remove unused sys headers
  * CPU (Linux): add new ARM part numbers
  * Wifi (OpenBSD): add support
  * Doc: add comments about displaying image logo on Windows [ci skip]
  * WM (FreeBSD): enable Hyprland version detection
  * CPU (Windows): use PDH to detect thermal temp
  * Logo (Builtin): Add support for anduinos (#1684)
  * Platform: retrieve full user name
  * Fastfetch: fix loading presets in `{exePath}/presets`
  * IO (Windows): support `~` expanding
  * Chore: update comment
  * Util (Windows): use native win32 functions
  * WM (Linux): remove `v` from Hyprland version
  * Packages (Linux): add soar packages count (#1531)
  * PhysicalDisk (Linux): add more disk types
  * PhysicalDisk (Linux): don't detect disk type for virtual disks
  * Revert "CPU (FreeBSD): remove using of freq_levels"
  * CPU (FreeBSD): don't assume one SMT group has only two threads
  * CPU (Linux): detect physical core count on non-x86 platforms</changelog>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1751112000">- Update to version 2.46.0:
  * Doc: update changelog [ci skip]
  * Logo (Builtin): simplify kali linux
  * Logo (Builtin): add Kalpa Desktop
  * Release: v2.46.0
  * Doc: update `help.json`
  * Logo (Builtin): rename hydra framework to hydrapwk
  * Chore: code cleanups
  * Global: add missing O_CLOEXEC to open()
  * GPU (Linux): fix an issue which vram_usage is bigger t han vram_visible
  * GPU (Linux): detect shared vram usage of AMD GPU
  * GPU (Linux): correctly call radeon driver
  * GPU (FreeBSD): fix mem leaks
  * GPU (Windows): fix build
  * GPU (Linux): fix building without features
  * GPU (Linux / FreeBSD): add DRM detection support for old radeon driver
  * GPU (Linux / FreeBSD): unifies DRM related code and code clean up
  * GPU (FreeBSD): support detection by DRM [wip]
  * WM (FreeBSD): fix Hyprland version detection
  * GPU (macOS): detect Metal 4 support
  * OS (macOS): seems macOS 26 Beta 1 still reports itself as macOS 16. Honor it.
  * CI: upgrade OpenBSD version
  * CI: split amd64 and arm64 builds
  * Kmod: remove Chinese comments [ci skip]
  * Board (macOS): detect board-id if available
  * Logo (Builtin): add GhostFreak
  * Logo (Builtin): added AnushOS (#1806)
  * Global: set `SetErrorMode(SEM_FAILCRITICALERRORS)` globally
  * Logo (Builtin): Add HarmonyOS support (#1804)
  * Packages (OpenBSD): fix counting by ignoring hidden folders
  * CPU (NetBSD): properly support PowerPC (#1802)
  * WM (MacOS): Added Aerospace WM detection
  * DE (macOS): report Liquid Glass on macOS 26+
  * OS (MacOS): add macOS 26 Tahoe
  * Logo (Builtin): detect and add TrueNAS Scale
  * OS (Linux): detect Raspberry Pi OS
  * Disk (Linux): hide `/boot/firmware` by default
  * Logo (Builtin): add xenia_old; update colors of xenia
  * TerminalFont: support rio terminal emulator (#1789)
  * JsonSchema: document `swap.separate`
  * CPU (Windows): use `perflib.h` instead of `pdh.h` for querying CPU temp
  * Logo (Builtin): improve colors of bedrock_small
  * Host (Linux): detect Linux Binary Compatibility on FreeBSD
  * Host (Linux): more detailed info of WSL
  * Logo (Builtin): Add Fedora2_small (#1785)
  * Packaging: update debian stuff [ci skip]</changelog>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1752840000">- Update to version 2.48.1:
  * Release: v2.48.1
  * WM (Linux): fix a copy-paste error
  * Modules: don't report errors when `condition` key is set
  * Packages: add new option `--packages-combined`
  * JsonConfig: add `modules[n].condition` to run modules conditionally on different platforms
  * Version: replace `WIN32` with `Windows` and `Darwin` with `macOS`
  * Processing (*nix): fix compiling on Android 7
  * Processing (Windows): redirect unused std handles to `NUL` to avoid potential errors
  * Processing (*nix): use traditional `fork-exec` on Android and OpenBSD
  * Packaging: update debian stuff [ci skip]
  * WM (Linux): add Openbox version detection
  * Chore: silense compiler warnings
  * Doc: optimize README; fix typo
  * Release: v2.48.0
  * Logo: partially revert c5c0e54
  * Separator: remove `formatArgs`
  * Display: add option `--fraction-ndigits`
  * Uptime / Users: add `years`, `days-of-year` and `year-fraction`
  * Chore (Linux): silience compiler warnings
  * JsonSchema: update `xxxFormat` [ci skip]
  * Disk: add keys `years`, `days-of-year` and `years-fraction`
  * Logo (Builtin): rename ada to xray_os (#1845)
  * CMake: reconfigure after adding / removing logos
  * README: document how to run multiple modules on command line [ci skip]
  * Processing (Linux): cache the index of `$LANG`
  * README: add DeepWiki badge [ci skip]
  * GPU (Windows): fix compiling on x86-32
  * Logo: don't print builtin logo if the provided logo source cannot be found
  * Logo: load `.raw` files as raw image file
  * Logo: don't load text files as image file
  * Logo: don't parse file paths as builtin logo name
  * GPU (Windows): more method to detect device name
  * GPU (Windows): detect GPU frequency by default
  * GPU (Intel): prefer matching GPU with bus id
  * Packages (Linux): clean up nix user package detection
  * Packages (Linux): add /etc/profiles/per-user detection for nix user packages
  * GPU (Windows): ignore invalid temps
  * GPU (Windows): greatly improve performance of GPU temp detection
  * Logo (Builtin): add AxOS
  * Logo (Builtin): add the Minimal System logo (#1837)
  * Revert "GPU (macOS): update how integrated GPUs are detected"
  * CI (Haiku): Apply work-around for work directory
  * Sound (macOS): improve device id detection
  * Processing (Linux): use `posix_spawnp` for better performance
  * Chore (Linux): silence compiler warnings
  * GPU (Windows): use nvapi to detect GPU type
  * GPU (Windows): clean up
  * Chore (Windows): tidy
  * GPU (Windows): fix Win7 compatibility
  * GPU (Windows): new method to detect device type
  * GPU (Windows): add driver version fall back
  * CMake (Windows): remove `setupapi` dependency
  * Battery (Windows): use `CMAPI` instead of `SetupAPI`
  * GPU (Windows): use `CMAPI` instead of `SetupAPI`
  * Presets: add a new example
  * PhysicalDisk: unifying white space trimming
  * OS (Linux): detect fedora variants
  * Chore: Add a missing semicolon (#1828)
  * Packaging: update debian stuff [ci skip]
  * OS (Linux): remove duplicated code
  * Doc: update README [ci skip]
  * CMake: remove the unused option `ENABLE_CPUUSAGE_PERFLIB`
  * Release: v2.47.0
  * README
  * Logo (Builtin): always use `FG_DEFAULT` on title and keys
  * Logo (Builtin): fix colors of raw Linux logo
  * Logo (Builtin): fix colors of DragonFly
  * Revert "Logo (Builtin): `:%s/FG_WHITE/FG_DEFAULT/g`"
  * CPUUsage (Windows): detect perflib support dynamically based on OS version
  * OS (Linux): add support of Xubuntu
  * CPUUsage (Windows): disable `ENABLE_CPUUSAGE_PERFLIB` by default
  * CMake: fix typo
  * CPUUsage(Windows): add new method using Windows Performance Library
  * CMake (SunOS): drop pciaccess dependency
  * Chore (Windows): move `perflib_.h` to somewhere global
  * Terminal (Linux): ignore `init` and `systemd`
  * CpuUsage (Windows): refine KernelTime calculation by removing unused DPC and interrupt time
  * CpuUsage (Linux / BSD): include interrupt and softirq times in CPU usage calculations
  * IO: increase `PROC_FILE_BUFFSIZ` to avoid possible short reads
  * README: add the OpenBSD and DragonFly installation method [ci skip]
  * Media (macOS): support old macOS version
  * Media (macOS): simplify now playing handling
  * Logo (Builtin): `:%s/FG_WHITE/FG_DEFAULT/g`
  * Display (FreeBSD): silence a compiler warning
  * GPU (FreeBSD): fix compiling when libdrm is not available
  * OS (Linux): append version string for Ubuntu variants
  * GPU (OpenBSD): fix pci.ids file location
  * OS (macOS): force reporting 26 on macOS Tahoe
  * OS (Linux): improve RPIOS detection
  * OS (Linux): use `ffStrbufSetStatic` where applicatable
  * OS (Linux): clean up dietpi related code
  * OS (Linux): detect DietPi
  * CI (FreeBSD): run with 14.3
  * Sound (SunOS): rework; drop pulseaudio dependency
  * Shell (SunOS): ignore leading `-`
  * GPU (SunOS): simplify
  * PhysicalDisk (SunOS): rework; support more device types
  * PhysicalDisk (SunOS): add support
  * Logo (Builtin): use FG_DEFAULT instead of FG_WHITE
  * GPU (SunOS): rework GPU detection
  * Chore: remove useless semicolons
  * BIOS (SunOS): detect BIOS type
  * OS (macOS): remove useless code
  * Packaging: update debian stuff [ci skip]</changelog>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1754049600">- Update to version 2.49.0:
  * Battery / Uptime: update document of custom format
  * Battery: address copilot feedback
  * WM (Linux): fix a copy-paste error.
  * Release: v2.49.0
  * Doc: update readme
  * Percent: add option `--percent-width`
  * Uptime / Battery: add formatted duration string in custom format
  * Global: add new unit related options
  * DiskIO: fix wrong `/s` assignment in custom format
  * Packages (Windows): find scoop installation path by parsing scoop config file
  * Font (Linux): parse unicode escaped string stored by qt5ct
  * FFstrbuf: add function `ffStrbufAppendUtf32CodePoint`
  * GPU (Intel): read render engine temperature only
  * WM (Linux): add labwc version detection support
  * CPU (Android): make SOC detection more loose
  * CPU (Android): add more QSD SOCs
  * Disk: update default value of `hideFolders`
  * Packages (Windows): don't rely on the existance of `$SCOOP` when detecting scoop packages
  * Logo (Builtin): remove Evolinx
  * GPU (macOS): silence compiler warnings
  * Wifi (macOS): use `sudo wdutil info` on Tahoe
  * FFstrbuf: add function `ffStrbufSubstr`
  * Chore: add FF_C_NONNULL
  * Version: correct the variable name 'name' to 'project-name'
  * Users: correct the variable name 'session' to 'session-name'
  * LocalIP: cleanup printing code
  * LocalIP (Windows): fix link speed calcuation
  * LocalIP (Windows): ignore stopped interfaces
  * Netif (Windows): correct default route detection (v2)
  * JsonSchema: improve definitions of `colors` and `conditions` [ci skip]
  * CI (Haiku): remove work around
  * Editor: correct the variable name `full-path` to `path`
  * Wifi (Linux): fix interface status when the interface is up but not connected
  * Presets: improve `25.jsonc`; add verbose comments [ci skip]
  * Netif (Windows): fix default route detection when the default adapter is disabled
  * CI (NetBSD): remove opencl support to fix building
  * Packages (Linux): remove `qi` support
  * Packages (Linux): improve accuracy of flatpak count detection
  * Logo (Builtin): add Aeon
  * GPU (Linux): add GPU temp detection for nouveau driver
  * GPU (Linux): support advanced detection for nouveau driver</changelog>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1755518400">- Update to version 2.50.2:
  * Release: v2.50.2
  * LocalIP: refines default route detection and JSON output for local IPs
  * Netif (Linux): improves default route detection and error handling
  * Netif (Linux): add verbose logs
  * CI: adds default build type to CI environment
  * LocalIP (Linux): add verbose debug log
  * LocalIP (Linux): fixes incorrect return and ensures struct initialization
  * LocalIP: fix `showMac` does not honor `defaultRouteOnly`
  * FFstrbuf: wrap yyjson.h include in conditional
  * Packages (Linux): fixes Linglong detection by counting linglong layers (#1903)
  * Release: v2.50.1
  * Packages (Linux): fixes Linglong detection on Debian (#1899)
  * Percent: refactors bar color logic for clarity and consistency; update examples
  * Revert "Percent: fix a copy-paste error"
  * Packages (Android): fix building
  * Doc: update changelog [ci skip]
  * Doc: update changelog
  * Flashfetch: disable decimal digits in Disk module
  * Separator: honors FQDN settings in Title module
  * Doc: update changelog
  * Fastfetch: adds support for reading JSON config from stdin
  * Chore: removes undocumented flag `--load-config`
  * Doc: update changelog [ci skip]
  * Release: v2.50.0
  * Global: fixes `-ffast-math` compatibility
  * GPU (macOS): don't set `platformApi` to `Metal` when Metal API is not used
  * GPU (Windows): ignore software adapters; add verbose logs
  * Doc: update changelog [ci skip]
  * Cursor (macOS): improves color detection and rounding for cursor info
  * Logo (Builtin): add ObsidianOS (#1890)
  * Packages: unifies Nix package detection code
  * CI: upgrade to `actions/checkout@v5`
  * README: HomeBrew -&gt; Homebrew (#1891) [ci skip]
  * Doc: update README &amp; Changelog
  * OS (Linux): tidy
  * Revert "CPU (macOS): use CPUID for freq detection on Intel"
  * CI (Haiku): reduce errors when installing deps (hopefully)
  * CommandLine: add `--gen-config-full`
  * Presets: add an example
  * Percent: fix a copy-paste error
  * JsonSchema: remove unused properties [ci skip]
  * Doc: don't recommand Ubuntu PPA [ci skip]
  * OS (Linux): fix lliurex detection (#1882)
  * DisplayServer: merge `serverVender` into `wmProtocolName`
  * Display (Linux): show brand of Xserver in WM section (#1888)
  * Chore: remove unused functions
  * Netif (SunOS): work around a bug that fails to detect default route for IPv4
  * GPU (FreeBSD): fix gpu driver detection when DRM is used
  * CPU (macOS): use CPUID for freq detection on Intel
  * LocalIP (Linux): fix building
  * LocalIP (SunOS): add speed detection support
  * LocalIP (SunOS): support `isIPv6AddressPreferred`
  * LocalIP (SunOS): add more if flags
  * LocalIP (Linux): fix compiler warnings
  * Networking (SunOS): fix compiler warnings
  * Netif (SunOS): fix compiler warnings
  * LocalIP (BSD): fix compiling
  * Wifi: updates default WiFi percentage thresholds
  * LocalIP: improve preferred IPv6 address detection
  * Netif: unifies BSD netif handling
  * Netif (Haiku): add preferred source addr
  * NetIO (SunOS): fix build
  * LocalIP (BSD): fix building
  * Netif: refactor API for dual-stack route detection
  * Display: fix invalid `size.maxPrefix` default value in generated config file
  * Netif (BSD): split different implementations
  * LocalIP: consider preferred source address when retrieving default route (#1883)
  * LocalIP (Windows): show only preferred IP when `showAllIPs` is not set
  * Chore: fix building on Windows
  * JsonConfig: make all non-module keys case-sensitive
  * JsonConfig: write all flags when generating config file
  * Doc: remove command line flags of modules
  * Modules: refactor module option handling for static allocation
  * Modules: export module info
  * Modules: add init and destroy option callbacks to module info
  * Disk (Linux): ignore Bedrock Linux subvolumes
  * OS (Linux): don't detect Bedrock linux when ran restricted
  * JsonSchema: Improves JSON schema enums with oneOf objects containing descriptive explanations for allowed values
  * GPU: support `"hideType": null`
  * Display: add `compactMode: null`; improve json schema
  * Modules: remove all `parseCommandOptions` and related stuff
  * JsonSchema: small improvements
  * Display: allow `"compactType": null`; improve json schema
  * Disk: add missing JSON config options
  * Percent: silense compiler warnings
  * JsonConfig: refactor JSON key handling to improve safety and consistency
  * JsonConfig: refactor string buffer JSON handling for robustness
  * Doc: update changelog; fix typo
  * Presets: add new config; fix old config
  * Option: fix a possible null reference segfault
  * Doc: update changelog [ci skip]
  * Bar: refactor config to use nested objects and deprecates old fields
  * Bar: add customizable bar color options for percentage bars
  * Bar: add configurable elapsed bar borders for percent bars
  * Wifi (macOS): disable using of `ipconfig` on 15.6 too
  * Chore: remove sensitive data [ci skip]
  * Changelog: fix typo [ci skip]
  * Packaging: update debian stuff [ci skip]</changelog>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1759060800">- Update to version 2.53.0:
  * CI: fix release action
  * Packaging: updates debian stuff [ci skip]
  * Release: v2.53.0
  * CPU (Android): adds support for new Qualcomm and MediaTek SoC codes
  * Doc: update changelog [ci skip]
  * CPU (Linux): adds support for new ARM C1 series CPU part IDs
  * Zpool: increase libzfs so version to 6
  * CI: upgrades runner of intel macOS
  * CPU (Windows): refines ARMv8.4-A detection to require LSE2
  * OS (Linux): Better Ubuntu flavor detection
  * Wifi (macOS): add (B)SSID detection back for Tohoe 26.0
  * TerminalFont: improve ghostty with command `ghostty +show-config`
  * Logo (Builtin): update ObsidianOS logo (#1970)
  * Disk: refactors mountpoint matching to use shared string utilities
  * CommandOption: refactors code with `ffStrbufSeparatedContainIgnCaseS`
  * FFstrbuf: adds more functions to match separated strings
  * Gamepad / Keyboard / Mouse: improves device error handling and memory cleanup
  * Gamepad / Keyboard / Mouse: adds support to ignore input devices by name prefix
  * Logo (Builtin): adds TempleOS
  * Disk: allows array input for disk folder and filesystem options
  * CI (Windows): add chafa dependency
  * TerminalFont: Improves Ghostty font config parsing with fallback font detection
  * Revert "Logo (Builtin): add Starry Linux"
  * Disk (Linux): avoids invalid disk creation times before Linux epoch
  * Disk (Linux): replace statx(2) call to syscall(2)
  * CI: adds glibc polyfill step for compatibility
  * CI: merge more jobs
  * CI: update cmake version
  * CI: merge amd64 and aarch64 code with matrix
  * CPU (Windows): trims vendor string read from registry
  * CPU (Windows): handles zero temperature data and refactors value use
  * Wifi (macOS): removes wdutil-based Wi-Fi detection code
  * Presets: add a new example [ci skip]
  * 3rdparty: upgrade widecharwidth
  * CPU (Linux): replaces HWCAP defines with explicit bitmasks for ARM
  * CPU (Linux): add new ARM part numbers
  * LocalIP: adds IPv6 type selection for local IP display
  * Separator: uses widecharwidth for Unicode wcwidth and fixes issue that wchar_t on Windows is 2-byte length
  * Separator: rename property `length` with `times`
  * OpenGL (Windows): simplifies code by removing custom window proc
  * Packaging: update debian stuff [ci skip]
  * Doc: update changelog
  * Global: renames `fractionTrailingZeros` enum to `always/never` for consistance
  * Fastfetch: removes redundant assignment in display config parsing
  * Release: v2.52.0
  * Btrfs (Linux): refactors Btrfs allocation to use profile string
  * Btrfs (Linux): adds tracking of Btrfs data copy counts
  * Terminal: ignores WSL2 unknown process for terminal detection
  * WMTheme (Linux): supports labwc on XFCE4
  * CPU (Linux): add cpu name detection for ia64
  * Doc: update README
  * Settings: renames GNOME settings accessor for clarity
  * Wallpaper (Linux): improves XFCE wallpaper detection via property enumeration
  * Settings: removes direct XFConf support in favor of DBus backend
  * DBus: adds function `ffDBusGetInt`
  * Dbus: adds 2nd argument to ffDBusGetMethodReply
  * CI: bump dependencies
  * Doc: update changelog
  * Fastfetch: improves frequency display config validation and schema
  * Fastfetch: add option `--faction-trailing-zeros`
  * Logo (Chafa): fixes setting `logo.width` with chafa
  * JsonSchema: update
  * Fastfetch: defaults `display.fraction.ndigits` to 2
  * Fastfetch: informs users that module-specific CLI options are no longer supported
  * LocalIP (Linux): skips interfaces without IPs unless MAC display is enabled
  * JsonConfig: fixes `fractionNdigits` will be incorrectly set to `0` when specifying `null`
  * Display: rearranges default format; removes scaled resolution
  * LocalIP: honors `fractionTrailingZeros`
  * Global: adds configurable trailing zeros for double formatting
  * DisplayServer: improves display size rounding and argument clarity
  * Display (Linux): detect scale factor for X11
  * Global (Android): enable X11 related stuff
  * CMake: enable zlib on all platforms
  * DisplayServer (Android): update WM name accurately
  * CMake (Android): link to libm
  * Release: v2.51.1
  * CPU (macOS): removes reliance on unavailable ARM capability headers on macOS
  * Packaging: update debian stuff [ci skip]
  * CPU/GPU (Linux): Improves CPU/GPU temp detection accuracy on Linux/Android
  * Revert "Uptime (Windows): use `QueryUnbiasedInterruptTime`"
  * JsonSchema: update
  * DisplayServer (Linux): upgrade kde-output-device-v2
  * Release: v2.51.0
  * GPU (Android): adds GPU temp detection support
  * Fastfetch: clarify that `--debug` is debug-mode only
  * CPU (Linux): improve temp detection
  * Battery (Android): fix battery temp detection
  * DisplayServer (Android): fix display server name
  * Global: handles missing config directories more gracefully
  * InitSystem (GNU): support shepherd detection
  * CPU (Windows): detects march on WoA
  * CPU (macOS): detects march on Apple Silicon
  * CPU (Linux): detects march on aarch64
  * Processing (Linux): enhances robustness when extracting process name and related fields
  * DiskIO (Linux): trim trailing white spaces
  * Chore: silense compiler warnings
  * CPUUsage: adds user guidance when CPU time fails to increase
  * LocalIP (GNU): adds MAC addr detection support
  * InitSystem: tidy
  * CMake (GNU): disable wifi support
  * Processing (GNU): fix command name reading
  * Common (GNU): more `__GNU__` tests
  * Terminal (GNU): enable version detection
  * Processing (GNU): hurd uses `cmdline` instead of `comm`
  * WM (GNU): enable
  * Global (GNU): code cleanups
  * Chore: tidy tabs
  * CMake (GNU): enable a lot of things
  * localip: Remove AF_LINK on GNU.
  * WIP: shepherd initsystem
  * Fix localip_linux on GNU
  * disable ffPackagesGetNix on when it is not defined
  * Port netif_gnu to the new api.
  * Fork netif_linux to netif_gnu.
  * Start work on GNU
  * TerminalShell: remove special handling of hyfetch
  * Fastfetch: improves config file generation message with tips
  * Chore: silence compiler warnings
  * CPU: fix building on non-x86
  * CPU: adds CPU microarchitecture detection for x64 and reporting
  * Disk: adds formatted free and available disk size fields
  * Logo (Builtin): adds AerynOS
  * Processes (Linux): be compatible with Hurd
  * DisplayServer (Android): update WM name
  * Fastfetch: improves format help output for config and variables
  * WM (Linux): uses the same X11 props as neofetch to query WM name
  * DE (Linux): adds Trinity version detection support
  * GPU (BSD): fallbacks to `pciids/pci.ids`
  * Packaging: update debian stuff [ci skip]
  * GPU (BSD): always use `pci.ids` provided by hwdata
  * Disk: disable hyperlink by default and move it to custom keys
  * TerminalShell (Linux): always ignore pid1 (v2)
  * TerminalShell (Linux): always ignore pid1
  * Disk (Linux): remove unused headers
  * Common: corrects the position for appending milliseconds
  * LocalIP (Linux): improves netlink route parsing by avoiding possible message truncation
  * FFstrbuf: handles double rounding and zero representation in formatter
  * GPU (Windows): improves GPU detection by refining device filtering
  * Shell (Windows): be compatible with fish 4 built by MSYS2
  * Common: refactors number formatting to use type-specific append functions
  * Format: replaces format specifiers with type-safe append functions
  * FFstrbuf: improves double formatting precision handling
  * Duration: use `ffStrbufAppendUInt`
  * FFstrbuf: adds number appending functions
  * Logo (Builtin): honor `logo.width`
  * JsonConfig: support JSON5
  * Common: refactors time formatting to use a shared buffer and utility macro
  * 3rdparty: upgrade yyjson to 0.12.0
  * JsonConfig: adds 'succeeded' module condition to JSON config
  * OS: set the icon of unknown OS type as a cog
  * Modules: return bool to indicate whether the detection is succeeded
  * CI (DFBSD): enable
  * CI (SunOS): fix build
  * CPU (macOS): changes CPU to M2 Pro for Mac14,12 host (#1915)</changelog>
</package>
<package pkgid="ec0aebfe4a5048c9b2b5705fb0c239e2a25e868f36741f3b7013c3acc28c08e146d99429c376f8828ea9020496e2b6685b01f7c53b768f36ae8d30a010ef111c" name="fastfetch" arch="x86_64">
  <version epoch="0" ver="2.53.0" rel="1.10"/>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1731153600">- Update to version 2.29.0:
  * CMake (OpenBSD): enable bluetooth detection
  * CMake (NetBSD): add `/usr/pkg/lib` to rpath
  * GPU: fix build if libpciaccess is not available
  * Camera (OpenBSD): add support (?)
  * OpenGL (NetBSD): use correct so file
  * Release: 2.29.0
  * OS (BSD): don't check for debian and ubuntu variants
  * OS (Linux): fix build
  * Library (Windows): load dlls at current exe path
  * Vulkan: drop windows-i686 support
  * Logo (Builtin): add Lilidog
  * OS (Linux): detect Lilidog
  * CI: remove windows-i686
  * Doc: update changelog
  * CI (DragonFly): build with chafa &amp; libelf
  * Libc (BSD): always initialize variables
  * Libc (DragonFly): add support
  * CI: build on DragonFly
  * Netif (SunOS): fix compiling
  * Sound (DragonFly): add support
  * DiskIO (DragonFly): add support
  * Doc: update changelog
  * OS (Linux): improve performance of proxmox version detection
  * Global: support DragonFly BSD
  * Brightness (NetBSD): disable
  * Doc: update changelog
  * Logo (Builtin): update OpenSUSE Leap
  * CI (NetBSD): release NetBSD
  * CI: remove libv4l
  * NetIO (*BSD): support OpenBSD &amp; NetBSD
  * Users (OpenBSD): add support
  * DiskIO (SunOS): remove dev path
  * DiskIO (OpenBSD): add support
  * DiskIO (NetBSD): add support
  * Logo (Builtin): make aperture colorable
  * CI (OpenBSD / NetBSD): embed pci.ids
  * Processes (NetBSD): add support
  * GPU: use `pciaccess` to enumerate PCI devices
  * CMake (NetBSD): set rpath
  * CPU (Android): add QS8E
  * Bios (NetBSD): try detecting boot method
  * Shell / Terminal: fix proc path detection
  * Platform (NetBSD): fix exe path detection
  * Disk (NetBSD): fix disk size detection
  * CPU (NetBSD): add support
  * Packages (NetBSD): add support
  * Keyboard (Linux): silence compiler warnings
  * CMake (*BSD): detect videodev2
  * CI (NetBSD): try fixing build
  * CI (NetBSD): add more dependencies
  * DisplayServer (Linux): silense compiler warnings
  * Global: remove stb_printf
  * Disk (OpenBSD): fix build
  * CMake (NetBSD): detect X11 and other packages
  * Disk: support NetBSD, improve hidden partition detection
  * NetBSD: support CPUUsage / Memory / Swap
  * CMake: allow to replace native *printf to stb_*printf
  * CI: fix a copy-paste error
  * Uptime (NetBSD): fix invalid result
  * CI: try adding netbsd
  * Global: make it compile on NetBSD
  * Logo (Builtin): update PikaOS (#1361)
  * Logo (Builtin): add SummitOS
  * Logo (Builtin): add XCP-ng
  * Logo (Builtin): update OpenSuse Tumbleweed
  * Global: overall optimization
  * 3rdparty: add stb_sprintf
  * Editor: fix the Vim version detection (#1356)
  * CMake: define `NOMINMAX` on Windows
  * CMake: use 64bit time_t on Linux
  * Editor: optimize editor version parsing (#1355)
  * Packaging: update debian stuff [ci skip]</changelog>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1731931200">- Update to version 2.30.1:
  * CMake: check return code of python scripts
  * Release: v2.30.1
  * CMake: fix the destination where `fastfetch_pciids.c.inc` is generated
  * CMake: Fixed the destination where fastfetch.1 is generated. (#1403)
  * Packaging: update debian stuff [ci skip]
  * Release: v2.30.0
  * Doc: remove guix package installer as it's outdated [ci skip]
  * Display: concat flags
  * GPU (Windows): fix a bad assignment
  * Terminal (Linux): support tilix version detection
  * NetIO (BSD): remove unnecessary checks
  * NetIO (BSD): add txDrops detection if supported
  * NetIO (macOS): fix 32bit trancation
  * Scripts: `gen-man.py` honors SOURCE_DATE_EPOCH. (#1400)
  * Logo (Builtin): update openSUSE Tumbleweed
  * Doc: update changelog [ci skip]
  * Percent: in custom format, only set num and bar string if enabled in percent config
  * Doc: update schema for percent type config
  * Percent: allow use enum to set type value in JSON config
  * Global: support percent type config in module level
  * Global: pack all enums and make flag enums unsigned
  * CPU (Linux): add more Apple SOC code names
  * Host (Android): detect marketing name of vivo smartphone
  * IO (macOS): fix logo fails to load from symlinked files
  * Processing (macOS): fix exe path detection
  * Util (macOS): cleanup `cf_helpers.c`
  * CMake: use `gen-man.py` to generate man file
  * Scripts: clean up `gen-man.py`
  * Scripts: make `gen-pciids.py` executable
  * Scripts: Add python script to generate man page (#1392)
  * GPU (macOS): apply the same logic as CPU just in case
  * CPU (macOS): try fixing CPU freq detection on Apple M4
  * Media (macOS): try fixing error `CFStringGetCString() failed`
  * Smbios: clean up more garbage values
  * StringUtil: rename `ffStrCopy` and correctly reflect its usage
  * Shell (macOS): try fixing segfault in old macOS
  * DisplayServer (NetBSD): detect WM / DE by process name
  * Packages (Linux): add qi support
  * Revert "IO: optimize createSubfolders (#1382)" (#1390)
  * tests: add FFstrbuf smallest allocation test &amp; minor fix (#1387)
  * Logo (Builtin): add cosmicDE logo (#1386)
  * Doc: fix typo in README (#1385) [ci skip]
  * OS (Android): display android icon
  * Logo (Builtin): add Unifi
  * CPU (OpenBSD): support CPU temp detection
  * Disk: be able to print disk indices
  * Battery: don't print index in multi-battery device
  * Sound (BSD): trim device names
  * Version (MidnightBSD): support libc version detection
  * Packages (BSD): support mport
  * Logo (Builtin): add MidnightBSD
  * FFstrbuf: fix small FFstrbuf allocations in ffStrbufEnsureFree (#1383)
  * IO: optimize createSubfolders (#1382)
  * DisplayServer: fix deprecation warnings
  * Host (macOS): add HwModel support for new Mac (2024) (#1381)
  * Bluetooth (Windows): detect battery level
  * Bluetooth (Windows): detect battery (WIP)
  * Logo (Builtin): fix Lilidog
  * FFstrbuf: correct definition of `StrStrIA`
  * Bluetooth (Windows): fix mac address detection
  * CMake: Add initial support for MidnightBSD (#1377)
  * Bluetooth (macOS): normalize mac address strings
  * Bluetooth (macOS): support battery level detection
  * Monitor: don't display `()` if display name is not available
  * Display: add `hdr-compatible`
  * Packaging: update debian stuff [ci skip]</changelog>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1733227200">- Update to version 2.31.0:
  * Display (Linux): detect bit depth when libdrm is used
  * Terminal: Support sakura version &amp; font detection
  * Release: v2.31.0
  * Processing (Linux): interrupt poll &amp; read syscalls when the child process is exited
  * Wifi (Linux): detect Wifi-7
  * Wifi (Windows): make unit of bitrates be consistant
  * Completion (Zsh): fix syntax error in completion file (#1421)
  * WM (Linux): fix wl-restart parsing (#1422)
  * Logo (Builtin): add Windows Server 2025
  * GPU (Linux): detect GPU NV type
  * CPU (Windows): code cleanup
  * CPU (Linux): support up to 128-socket boards
  * CPU: change `cpuCount` to `packages`; support custom format
  * CPU: remove duplicate whitespaces in CPU name
  * CPU (Linux): refactor; fix cpu count detection
  * Support for dual CPU systems  (#1417)
  * CI: fix building on macOS
  * Display (macOS): don't crash with NULL pointer references
  * Logo (Builtin): update MidOS
  * OS (Linux): check for lmde
  * Scripts: use datetime to get date and set timezone to UTC (#1410)
  * Display: change physical size detection to use basic display parameters
  * Users: fix invalid var name
  * Wifi (FreeBSD): support channel &amp; frequency detection
  * Wifi (Android): silence compiler warnings
  * Chore: silence some warnings
  * Wifi (Android): report more props
  * Wifi: print channel band
  * Wifi (Linux): detect frequency &amp; channel number
  * Wifi (macOS): fix build on old OS version
  * Display: report ppi to 0 if screen size is not available
  * Wifi: detect channel and frequency
  * Display: don't report screen size when display is mirrored
  * CMake: fix possible linking errors in `BINARY_LINK_TYPE=dynamic` mode
  * Display (Linux): fix preferred resolution detection for wayland
  * Display (FreeBSD): fix build
  * Display: print preferred resolution &amp; refresh rate in custom format
  * Display: add scale factor in custom format
  * Display (Android): fix build
  * Display (Windows): detect preferred resolution &amp; refresh rate
  * Display (macOS): detect maximum resolution &amp; refresh rate
  * Display (Linux): detect preferred resolution and refresh rate
  * DisplayServer (Linux): remove support of xcb &amp; xlib
  * Wifi (Linux): improve performance
  * DBus: use `general.processingTimeout` as its timeout instead hard coding
  * Media (Linux): improve performance of dbus communication
  * mtgpu: header file cleanup for forward compatibility (#1405)
  * Packaging: update debian stuff [ci skip]</changelog>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1734523200">- Update to version 2.32.1:
  * Release: v2.32.1
  * Packages (OpenBSD): fix a typo that prevents package counting from working
  * Packaging: update debian stuff
  * Release: v2.32.0
  * Revert "Display (Linux): prefer detecting physical size from EDID"
  * Wifi (FreeBSD): early break if the interface is not associated
  * WM (Linux): added ratpoison window manager (#1442)
  * Version: fix format parameter name
  * Logo (Builtin): improved debian ascii logo (#1441)
  * OpenGL (NetBSD): try fixing build
  * Display (FreeBSD): don't try to use `/sys` on FreeBSD
  * WM (FreeBSD): improve WM detection for Wayland
  * OpenGL (NetBSD): fix build
  * OpenGL (EGL): prefer surfaceless display
  * Add Armbian-unofficial detection (#1436)
  * Logo (Builtin): add Ultramarine Small
  * WM (OpenBSD): fix process enumeration
  * Display (Linux): clean up
  * WM: add support for fvwm (OpenBSD) and ctwm (NetBSD)
  * Scripts: fix typo
  * OpenGL (Linux): suppress IO
  * CPU (ARM): add more apple cores
  * CPU (Linux): detect Virtualized Apple Silicon
  * Doc: update changelog [ci skip]
  * Logo (Builtin): add Serpent OS
  * JsonSchema: fix typo
  * OS (Linux): detect Linux Lite
  * JsonSchema: add documentation of format args
  * Fastfetch: add `-h format-json`
  * Global: refactor code of `-h &lt;module&gt;-format`
  * Host: silence compiler warnings
  * Host (Sun): fix build
  * Host: detect mac model in FreeBSD &amp; Windows
  * Edid: use screen size in DTD if make sense
  * Host (Linux): report mac product name
  * Wifi (Linux): fix bssid formatting
  * Logo: randomly select one if the logo source expands to multiple files
  * GPU (OpenBSD): fix `pci.ids` file location
  * Packaging: update debian stuff [ci skip]</changelog>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1735214400">- Update to version 2.33.0:
  * Release: v2.33.0
  * Doc: update changelog [ci skip]
  * Media (Linux): set player name manually for musikcube
  * Logo (Builtin): add GoralixOS
  * Media: make it able to print player info in custom format
  * Media (Linux): report player name
  * Vulkan (Android): hard code path of `libvulkan.so`, so that users don't need to install vulkan-loader wrapper of termux
  * Media (Linux): Fix #1461 (WIP)
  * Doc: update changelog [ci skip]
  * Logo (Builtin): add NurOS
  * Doc: add comments for running fastfetch in root
  * DiskIO (OpenBSD): remove debug output
  * PhysicalMemory: clean up garbage data
  * CPU (NetBSD): fix typo
  * Battery (OpenBSD): fix build
  * Battery (NetBSD): add support
  * Bluetooth (BSD): disable
  * CPU (NetBSD): trim CPU vendor
  * Brightness (NetBSD): don't error out if the screen idx isn't 0
  * Version (NetBSD): report sysname
  * CPU (NetBSD): support temp and frequency detection
  * SMBIOS (NetBSD): add more data
  * Battary (NetBSD): some basic investigation of acpi battery detection
  * Battery (OpenBSD): add support
  * Brightness (OpenBSD): add support
  * Brightness (NetBSD): add support for builtin display
  * Bluetooth (Windows): silence compiler warnings
  * CMake: Add a cmake option to make flashfetch target optional (#1455)
  * PhysicalDisk (Linux): fix interconnect type detection
  * Bluetooth (Linux): improve performance
  * TerminalShell (Android): ignore proot
  * Bluetooth (Windows): optimise
  * Bluetooth (macOS): don't report disconnected devices if `showDisconnected == false`
  * Bluetooth (Linux): improve performance when `showDisconnected == false`
  * BluetoothRadio (Linux): improve performance by reducing size of dbus response
  * FFlist: fix return value of `ffListPop`
  * OS (Linux): Refactor Armbian version detection and add support for ubuntu-based armbian detection (#1447)
  * Shell (Windows): use $POWERSHELL_VERSION if available</changelog>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1736596800">- Update to version 2.34.0:
  * Media (Linux): remove unused variables
  * Doc: update JSON schema [ci skip]
  * Processing (Windows): fix get current process
  * OpenGL (EGL): try GLES 2.0+; then fallback to 1.1 if failed
  * Release: v2.34.0
  * OpenGL (Android): enable support
  * OpenGL (Android): request GLES 2+
  * Battery (NetBSD): fix battery percentage detection
  * Packages (Linux): rename am-user to appman
  * Packages (Linux): remove possible final newlines in am config
  * General: don't suppress the output of `preRun`
  * Packages (Linux): support am-user
  * WMDE: detect Sway by env variables
  * CPU (Android): check for MTK D9X00 SOCs
  * feat: Add Rhino Linux ASCII (#1487)
  * CMake (Android): set rpath for system Android libs
  * Sound: detect platform API
  * Processing (Windows): early return if `OpenProcess` failed
  * Logo (Builtin): add snigdhaos ascii (#1485)
  * fixing fastfetch wrong colors for xray_os logo (#1486)
  * Doc: update changelog [ci skip]
  * CI (Linux): add Linux ppc64le platform (#1484)
  * CPU (Linux): fix var content was unexpectedly modified
  * OS: prefer pretty names
  * CPU: fix core count output in multi-package platforms
  * CPU (Linux): detect TZ temp if CPU temp is not available
  * Packages (macOS): remove redundant tokens
  * Logo (Builtin): add the Lubuntu logo (#1481)
  * Doc: update README [ci skip]
  * FFstrbuf: improve performance of copying static strings
  * Terminal (Linux): fix detection of `pk-command-not-found`
  * TerminalShell (Linux): relax detection of terminals in NixOS
  * Doc: update README.md
  * Logo (Image): mark ghostty supports kitty image protocol
  * TerminalSize (Linux): enable fast path when stdout is redirected.
  * WM (Linux): detect WM version
  * WM (Linux): add sway version detection
  * Terminal (macOS): improve performance of kitty version
  * WM (Windows): detect version of DWM
  * WM (Linux): don't crash if no wm is detected
  * WM (macOS): add WindowServer version detection
  * WM: report version field in custom and JSON output
  * WM: Add support for detecting window manager versions, add support for Hyprland version (#1472)
  * Logo (Image): add `--kitty-icat`; honor `--logo-height` if set
  * Logo (Image): support generate image data via `kitten icat`
  * Revert "GPU: support detection by EGLext"
  * Brightness (FreeBSD): fix backlight name detection
  * TerminalFont (macOS): fix ghostty font detection; default to `JetBrains Mono`
  * Platform (Linux): fix exe path detection (#1468)
  * Bluetooth (DragonFly): disable module to fix build
  * GPU (EGLext): fix build on old systems
  * TerminalFont: support Ghostty
  * GPU: rename `ffGetGPUVendorString` to `ffGPUGetVendorString`
  * GPU: support detection by EGLext
  * Bluetooth (FreeBSD): add support (not tested)
  * CI: update *BSD versions
  * Host (macOS): fix thunderbolt version of new MBPs
  * Packaging: update debian stuff [ci skip]</changelog>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1736769600">- Update to version 2.34.1:
  * Sound: fix a memleak
  * Chore: fix spelling
  * CPU (BSD): improve base freq detection
  * Release: v2.34.1
  * fix(logo): Rename *_LOGO_SMARTOS to *_LOGO_SNIGDHAOS (#1502)
  * Logo (Builtin): add Oreon
  * Logo (Builtin): add HeliumOS
  * Memory (NetBSD): change formula to be consistant with other systems
  * Memory (OpenBSD): update formula to be consistant with other systems
  * Logo (Builtin): add netbsd_small
  * CI: fix build
  * DisplayServer (Linux): upgrade wayland protocol `kde-output-device-v2`
  * DisplayServer (Linux): check HDR support with `xx_color_manager_v4_interface` (WIP)
  * Media (Linux): use file name as media name if song title is not available
  * CPU (FreeBSD): bind process to the first 2 cores
  * chore: remove unnecessary NULL checks
  * TerminalFont (macOS): fix Ghostty termfont detection
  * GPU: set GPU vendor string when using OpenGL backend
  * Packaging: update debian stuff [ci skip]</changelog>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1737892800">- Update to version 2.35.0:
  * Thread: optimise locking (unused though)
  * CPU (Linux): add comments
  * Release: v2.35.0
  * PhysicalDisk: change temp range to 50-70 °C
  * Doc: update changelog again [ci skip]
  * Doc: update changelog [ci skip]
  * Doc: update json_schema [ci skip]
  * Doc: update changelog [ci skip]
  * Disk / Users: support duration printing in custom format
  * Doc: update changelog
  * CPU (Android): add QS8E for Galaxy
  * CMake: add option `-DCUSTOM_LSB_RELEASE_PATH`
  * OS (Linux): acquire more os info from lsb-release if missing from os-release
  * Logo (Builtin): fix more escape problems
  * Logo (Builtin): fix OpenBSD &amp; OpenBSD_small
  * Logo (Builtin): Add KDE Linux logo (#1523)
  * CPU (Android): detect new QS8E
  * CPU (Linux): detect SOC name on RISCV
  * Doc: update changelog [ci skip]
  * Presets: fix percentage number printing in examples/20 [ci skip]
  * Disk (NetBSD): silence compiler warnings
  * Doc: update feature_request issue template
  * Display (Linux): return reason if errored
  * Packages: fix file type check
  * Packages (SunOS): fix building
  * Packages: add pkgsrc; code refactor
  * Doc: update issue templates [ci skip]
  * CI: add linux-armv6
  * OpenGL: suppress output of EGL again
  * Doc: update more issue templates [ci skip]
  * Doc: split bug report issue template into smaller parts [ci skip]
  * CPU (Linux): query SOC name in cpuinfo for aarch64
  * TerminalShell (Linux): ignore proot
  * Logo (Builtin): update netbsd small
  * Logo (Builtin): add Arch Old
  * Chore: forbid using of VLAs
  * Packaging: update debian stuff [ci skip]</changelog>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1739448000">- Update to version 2.36.1:
  * Release: v2.36.1
  * CI: fix typo
  * CMake (Haiku): set `_GNU_SOURCE`
  * Logo (Builtin): fix Chimera Linux distro name to match ID (#1554)
  * Logo (Builtin): correct shape of ALT Linux (#1553)
  * CI: build with chafa &amp; ddcutil (aarch64)
  * CI: update artifact names of armv6l and armv7l
  * Doc: update readme
  * CI (Linux): use native aarch64 runner
  * CI (NetBSD): update OS version to 10.1
  * Packaging: update debian stuff [ci skip]
  * CI: add linux-s390x
  * CPU: remove useless `w/ Radeon 780M Graphics`
  * Terminal (Linux): improve performance of Tilix version detection
  * Release: v2.36.0
  * OpenGL (Haiku): enable support
  * Format: support syntax of `{$ENV_VAR}` in custom format
  * Logo (Builtin): KDE -&gt; KDE Neon
  * Doc: update changelog [ci skip]
  * OS (Linux): combine all armbian variants (#1547)
  * CPU (Linux): loosely detect cpu name of unknown platform
  * CPU (Linux): add cpu name detection for s390x
  * Display: capitalize `{type}`'s output (#1543)
  * Logo (Builtin): split `ID_LIKE` before using
  * CPU (Linux): support physical core count and package count detection on loongarch
  * Logo (Builtin): update some distro names
  * Logo (Builtin): simplify RebornOS
  * Logo (Builtin): fix color of Haiku in light mode
  * Shell (OpenBSD): trim `-` for login shells
  * CPU (Linux): detect for `model name` on unknown platform
  * Doc: update license
  * CMake (Haiku): fix build
  * Processing (Unix): better `pipe2(2)` existance check
  * Camera (macOS): make fastfetch compiled on newer macOS versions runs on older ones
  * GPU (macOS): use `recommendedMaxWorkingSetSize` as total GPU mem size
  * GPU (Nvidia): fall back to `nvmlDeviceGetMemoryInfo` if `nvmlDeviceGetMemoryInfo_v2` isn't supported
  * Temps (macOS): support M4x
  * Packaging: update debian stuff [ci skip]
  * Logo (Builtin): remove left padding of filotimo
  * Logo (Builtin): add filotimo logo (#1535)
  * Logo (Builtin): add Nexa Linux logo (#1539)
  * Chore: use `ffStrEquals` instead of `strcmp`
  * CMake (Haiku): fix an invalid file name
  * Chore: fix typo
  * Haiku: minimal implementation (#1538)
  * Logo (Builtin): change arch_old logo colours to be more accurate to the actual original logo.
  * Disk (BSD): silence compiler warnings
  * CMake (OpenBSD): remove pulseaudio detection
  * Sound (NetBSD): use kernel APIs instead of the OSS wrapper
  * CPU (Linux): fix build on PPC
  * Sound (OpenBSD): Use sndio instead of pulseaudio
  * CPU (Linux): rework cpuinfo parsing
  * Sound (NetBSD): don't assume readlink reports file name only
  * Sound (NetBSD): use OSS instead of pulseaudio
  * Sound (FreeBSD): report OSS ABI version</changelog>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1740052800">- Update to version 2.37.0:
  * Doc: fix typo in changelog [ci skip]
  * Release: v2.37.0
  * OS (Haiku): calcuate OS version
  * Version: report more CPU arches
  * OS (Haiku): report pre version as `-`
  * CPU (NetBSD): support non-intel CPUs
  * CMake (Haiku): enable more optional dependencies
  * OS (Haiku): detect OS beta version
  * Processing (Haiku): fix exe detection
  * GPU (Haiku): silence warnings
  * Haiku: fix building
  * Doc: update changelog [ci skip]
  * Packages (Haiku): rename package manager name to `hpkg`
  * PhysicalDisk (Haiku): fix drive size calcuation
  * Disk (Haiku): report all partitions
  * Shell (Haiku): fix arg0 detection
  * IO (Haiku): access `/path/to/file/` doesn't work. Work around it
  * LocalIP: fix `--localip-default-route-only false not working with --gen-config`
  * Bios (Haiku): report BIOS type
  * Terminal (Haiku): detect terminal version
  * PhysicalDisk (Haiku): fix SCSI drive detection
  * OpenGL (Haiku): report platform API
  * Smbios: add comments about UEFI systems [ci skip]
  * OpenGL (Haiku): add support
  * Chore: remove unused `#include`s
  * GPU: add missing variable inits
  * Bluetooth (Haiku): suppress debug output of system API
  * PhysicalDisk (Haiku): report drive type
  * Presets: print keyboard &amp; mouse in all.jsonc
  * Bluetooth (Haiku): WIP
  * Gamepad (Haiku): enable
  * PhysicalDisk (Haiku): add support
  * CPUUsage (Haiku): add support
  * Gamepad (Haiku): add support
  * Disk (Haiku): code cleanup; honor `option-&gt;folders`
  * Mouse / Keyboard (Haiku): code cleanup; ignore disabled devices
  * NetIO (Haiku): code cleanup
  * NetIO (Haiku): add support
  * Keyboard (Haiku): add support
  * Mouse (Haiku): add support
  * Sound (Haiku): fix runtime error getting mute status
  * Smbios: don't try to scan memory multiple times
  * Revert "Host (Haiku): add debug log"
  * Smbios (NetBSD): add support
  * Sound (Haiku): Init variables unconditionally; fix mute handling
  * InitSystem (Haiku): add support
  * Sound (Haiku): add support
  * Haiku: 32bit fixes
  * Host (Haiku): add debug log
  * Terminal (Haiku): fix konsole version detection
  * Chore (Haiku): silence compiler warnings
  * Smbios (Haiku): add support; enable related modules
  * StringUtils: fix a possible segfault
  * PhysicalMemory: fix `--format json` printing
  * Sound: properly round percent values
  * Weather: honor `display.temp.unit`
  * Battery (Haiku): fix capacity calculation
  * CI: enable `-DENABLE_EMBEDDED_AMDGPUIDS=On`
  * Battery (Haiku): add support (untested)
  * Battery (Haiku): add stub file
  * Logo (Builtin): simplify haiku; add haiku2 from neofetch
  * Uptime (Haiku): silence compiler warnings
  * InitSystem (Haiku): enable support
  * Processing (Haiku): support exe path detection
  * GPU (Haiku): use system API to fetch PCI devices
  * GPU: support embedding amdgpu.ids into fastfetch
  * GPU (Haiku): change the path of pci.ids to hwdata
  * TerminalFont (Haiku): support Haiku Terminal
  * Terminal (Haiku): add pretty name for Haiku Terminal
  * GPU (Haiku): add pci.ids file path
  * Doc: update README.md (#1557) [ci skip]
  * Scripts: download pci.ids by cmake; remove `python-requests` dependency
  * Logo (Builtin): update Rosa linux logo (#1559)
  * OS: remove option `--escape-bedrock`
  * Media (Haiku): enable support
  * Terminal (Haiku): add basic support
  * Display (Haiku): code cleanup; detect manufacture date
  * OS (Haiku): silence warnings
  * Media (Haiku): enable support
  * Sound (Haiku): add stub file
  * Disk (Haiku): add support
  * CPU (Haiku): add support
  * CMake (Haiku): add more optional dependencies
  * Display (Haiku): trim monitor name
  * GPU (Haiku): add support
  * GPU (macOS): fix build error in MacOS 10.13 (#1556)
  * Packaging: update debian stuff [ci skip]</changelog>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1741435200">- Update to version 2.38.0:
  * CI: try fixing CI failures
  * Release: v2.38.0
  * Chore: update image logo
  * Camera (macOS): silence compiler warnings
  * Camera (macOS): fix crashing on old macOS version
  * CI (macOS): remove CodeQL
  * Logo (Builtin): Add Shebang Linux (#1592)
  * Doc: update supported platforms
  * Logo (Builtin): update fastfetch logo to match the svg one
  * Chore (Windows): set exe file icon to fastfetch logo
  * Logo: add fastfetch logo
  * Doc: fix `SI` size prefix description
  * Doc: update changelog [ci skip]
  * Camera (macOS): try fixing segfault in macOS 10.15
  * Brightness: detect &amp; print screen type
  * Terminal (Linux): support termite version detection
  * TerminalFont (Linux): support termite terminal (#1588)
  * JsonSchema: update format json [ci skip]
  * Packages (Linux): Add support for Pisi Linux (#1580)
  * GPU: support percentage num &amp; bar in custom format
  * Logo (Builtin): simplify
  * Logo (Builtin): Added Bedrock Linux small ASCII logo (#1582)
  * Bootmgr (Linux): fix secure boot testing
  * Logo (Builtin): simplify os names
  * OS (Linux): fix VanillaOS detection
  * Builtin (Logo): simplify linuxmint handling
  * Logo (Builtin): add opensuse-tumbleweed_small
  * Disk: add `{mountpoint}` and `{mount-from}` in custom output format
  * Presets: fix OS key in examples/25
  * DateTime (Windows): fix day-pretty output in custom format
  * Presets: add a new example
  * OS: allow customize key format with kernel name and distro name
  * Battery: add missing `{icon}` in key format
  * Chassis (macOS): add support
  * JsonSchema: update format schema
  * Battery (Haiku): handle empty slots
  * Packaging: update debian stuff [ci skip]</changelog>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1742558400">- Update to version 2.39.1:
  * Release: v2.39.1
  * Networking: request HTTP/1.0, as we don't support chunked response
  * Packaging: update debian stuff [ci skip]
  * Packages (Linux): add pkgsrc detection
  * Logo (Builtin): add NetBSD2
  * Display (Linux): fix the error check for ffReadFileData (#1622)
  * Release: v2.39.0
  * Networking (FreeBSD): support fast path without TFO enabled
  * Networking: don't enable TFO if server doesn't support it
  * Networking: don't enable HTTP compression if server doesn't support it
  * Networking (Linux): remove unnecessary variables
  * Networking (Linux): don't generate SIGPIPE
  * Networking (Windows): more verbose log
  * Networking (macOS): support TFO
  * Networking (BSD): support TCP_FASTOPEN
  * Completion (Bash): Use `fastfetch --help-raw` for auto-completion
  * Networking (Windows): print readable error message
  * Networking (Windows): fix libz loading; use TCP_FASTOPEN if available
  * Networking: silence compiler warnings
  * Networking (Linux): handle a case when `sendto()` reports `EINPROGRESS`
  * Networking: move files to a sub folder
  * Networking (Windows): apply the same optimizations of *nix's
  * Netif (Windows): use `GetIpForwardTable2` to support IPv6
  * Networking (Linux): improve performance by TFO and response compression
  * Netif (DragonFly): use code of OpenBSD
  * NetIF (OpenBSD): fix default route detection
  * Doc: update changelog [ci skip]
  * Wifi (macOS): remove usage of Apple80211
  * Completions (Bash): remove `--lib-*`
  * OpenGL: drop OSMesa backend
  * Logo (Builtin): add Bredos
  * Logo (Builtin): Change FoxOS to WolfOS (#1534)
  * Terminal (Windows): detect warp version
  * Wifi (macOS): improve performance of SSID detection on Sequoia
  * Packaging: update debian stuff [ci skip]
  * Kmod (NetBSD): add `__attribute__((__packed__))` to ensure memory layout
  * CI: remove unnecessary deps
  * Logo (Builtin): Add Common Torizon OS as a variant
  * Display (Windows): prefer `DISPLAYCONFIG_DEVICE_INFO_GET_ADVANCED_COLOR_INFO_2`
  * Kmod (NetBSD): add support</changelog>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1743681600">- Update to version 2.40.0:
  * WM (Linux): fix https://github.com/fastfetch-cli/fastfetch/issues/1657#issuecomment-2772749780
  * WM (Linux): query Hyprland version from hyprland dev header
  * Binary: add comments
  * WM (Linux): correctly fall back to calling `wm --version` if `ffBinaryExtractStrings` fails
  * CI: remove Dragonfly BSD
  * WM (Linux): fix (?) Hyprland version detection
  * Release: v2.40.0
  * Uptime: round seconds to the nearest minute
  * DisplayServer (Linux): silence compiler errors
  * Util (Windows): fix mem leaks
  * Util (Windows): fix possible errors in `Unicode.c`
  * Util (Linux): fix executable file check
  * FFlist: use `uint8_t` instead of `char` to store raw data
  * Threading: fix timeout calcuation
  * Netif (Linux): support default route detection for ipv6
  * Wifi: fix code smells
  * PhysicalMemory (Linux): code refactor
  * Users (Linux): support IPv6 client addr
  * Users (Windows): support IPv6 client IP
  * Uptime (NetBSD): fix boot time calcuation
  * TPM (macOS): add support
  * InitSystem (Haiku): set pid=0 if fails to detect init pid
  * Doc: update changelog [ci skip]
  * Revert "CI: build in debug mode"
  * Swap (Windows): support multiple paging files
  * Swap (OpenBSD): fix mem leaks
  * Swap: fix code smells
  * Sound: fix typo and mem leaks
  * Doc: update changelog [ci skip]
  * Chore (Windows): silense compiler warnings
  * fastfetch: load config from fastfetch binary path
  * Logo (Ascii): Change Nexa Linux logo (#1653)
  * Logo (Builtin): change name of  Xray-OS
  * Terminal (Windows): fix file version detection
  * CI: build in debug mode
  * GPU (Windows): fix max frequency detection for AMD ODN
  * GPU (Windows): use ODN as OD7; fix `ADL2_Overdrive8_Current_Setting_Get` call and some other bugs
  * Doc: update changelog [ci skip]
  * TerminalFont (Windows): support Warp Terminal
  * GPU (Windows): try more OD funcs; add more verbose logs
  * Disk (macOS): silense compiler warnings
  * DNS (macOS): detect DNS entries by SystemConfiguration
  * DNS (Linux): add systemd-resolved support; add verbose logs
  * Media: fix code smells
  * Gamepad / Keyboard / Mouse (FreeBSD): break detection earlier
  * Keyboard (FreeBSD): fall back to KDGKBINFO if usbhid fails
  * Gamepad / Mouse / Keyboard (FreeBSD): fix memleaks
  * Host (Windows): fix build on WoA
  * GPU (Windows): actually use correct OD fns for recent AMD GPUs
  * GPU (Windows): add `OverdriveN` functions for AMD
  * GPU (Windows): fix `ADL2_Adapter_AdapterInfoX3_Get` result test
  * GPU (Windows): added verbose logs
  * Global: fix code smells
  * Host (macOS): add new models; fix an invalid model ID
  * Chore: fix code smell
  * Disk (SunOS): remove creation time detection support
  * Util/debug: add missing `#pragma once`
  * Separator: fix `outputColor` doesn't work when `length` is set
  * Chore: fix a lot code smell
  * LocalIP: change `{name}` to `{ifname}` in `--localip-key-format` for consistancy
  * GPU: fix code smell
  * GPU (General): fix GPU device type detection
  * Battery (NetBSD): report remaining time
  * Battery (Linux): fix critical state detection
  * Battery (macOS): fix manufacture date detection
  * GPU (macOS): fix code smell
  * CPU (Linux): fix CPU detection on some PPC platforms (#1640)
  * GPU (Windows): fix code smells
  * GPU: update JSON result structure; fix segfault and memleaks
  * GPU (Windows): support VMEM type detection via nvapi
  * GPU (Windows): rewrite implementation for AMD GPUs using ADL SDK
  * GPU (Windows): support memory type detection for Intel dGPUs
  * GPU: prepare for memory type &amp; shared memory usage detection
  * GPU (Windows): add display-library for future use
  * IO: don't suppress IO in debug mode
  * Bootmgr: report boot order
  * Smbios (OpenBSD): add comments for UEFI systems [ci skip]
  * Logo (Builtin): fix opensuse-tumbleweed_small
  * Wifi (Linux): add verbose logs
  * Wifi (DragonFly): fix building
  * Bootmgr (BSD): add support for OpenBSD and NetBSD
  * BIOS (OpenBSD): check bios type
  * Smbios: add verbose debug logs
  * Smbios (OpenBSD): add support for legency BIOS
  * util/debug: add missing headers
  * Wifi (FreeBSD): use ioctl to improve performance
  * Logo (Builtin): Change WiiLinuxNgx to more generic name (#1633)
  * Packaging: update debian stuff [ci skip]
  * Terminal (macOS): fix Warp Terminal pid detection
  * Presets: update examples/{24,26} [ci skip]</changelog>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1744372800">- Update to version 2.40.4:
  * Release: v2.40.4
  * Fastfetch: fix loading presets in `{exePath}/presets`
  * WM (Linux): remove `v` from Hyprland version
  * Logo (Image): mark kitty image protocol support for warp terminal on macOS
  * Release: v2.40.3
  * Fastfetch: fix loading example configs from presets directory
  * Release: v2.40.2
  * Doc: fix CI errors (2)
  * Doc: fix CI errors
  * Doc: migrate some help texts to Github Wiki pages
  * Doc: update documents
  * Doc: update README
  * Fastfetch: enforce `.jsonc` extension when loading config file
  * Logo (Image): default to kitty protocol in warp terminal
  * Release: v2.40.1
  * Logo: don't try to find files named `-`
  * IO: remove fast path of `ffPathExists`, which causes too many problems
  * TPM (macOS): fix compiling error on old system
  * Packaging: update debian stuff [ci skip]</changelog>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1749729600">- Update to version 2.45.0:
  * Release: v2.45.0
  * Swap (Haiku): detect detailed info
  * Chore (Haiku): don't use hard-coded page size
  * Disk (BSD): silence compiler warnings
  * Swap (DragonFly): add support
  * Swap (SunOS): detect detailed info
  * Swap (OpenBSD): detect detailed info
  * Swap (Linux): add fallback for Android
  * Swap (Linux): support detailed info
  * Swap (FreeBSD): detect detailed info
  * Swap (macOS): detect detailed info
  * Swap: support separated output
  * Swap (Windows): detect detailed info
  * Smbios (DragonFly): acquire SMBIOS info from `/dev/mem`
  * DE (DragonFly): fix build
  * Swap (Linux): use `/proc/swaps`
  * CI (Linux): fix musl build
  * CI (Linux): add missing deps for musl
  * Logo (Builtin): Update logo for Xenia Linux (#1783)
  * Disk (BSD): don't ignore sshfs
  * Packages (Linux): fix dnf package count detection (v2)
  * Packages (Linux): fix dnf package count detection
  * CI: add back disabled DFBSD
  * CMake: fix build of FreeBSD
  * Disk (Linux): don't ignore sshfs
  * CI (Haiku): add build
  * CMake: build FreeBSD `pkg` package
  * Logo: support `"type": "command-raw"`
  * Chore: tidy
  * Fix typo, 15,2 isn't a real mac model number
  * DE (FreeBSD): support KDE version detection
  * Logo (Builtin): add void2
  * Logo (Builtin): update default colors of voidlinux
  * Logo (Builtin): add rhel_small
  * WM: support I3 version detection
  * WM: support FVWM version detection
  * WM: support CTWM version detection
  * Logo (Builtin): add Starry Linux
  * Chore: code cleanup
  * GPU: add more GPU vendors
  * JsonSchema: update `&lt;module&gt;Format` [ci skip]
  * Packages: split code
  * Packaging: update debian stuff [ci skip]
  * Host (Android): add detection for OnePlus market name
  * Release: v2.44.0
  * DisplayServer (Linux): fix errors on KDE beta
  * Disk: add `--disk-hide-fs`
  * Disk: rename `hiddenFolder` to `hideFolder`; add docs
  * Disk: add `hiddenFolders` (2)
  * Logo (Builtin): Add UBLinux Logo (#1764)
  * Disk: add option `--disk-hidden-folders`
  * Disk (Linux): don't hard code hidden mount points
  * TerminalShell (Linux): ignore `script`
  * Logo (Builtin): Add Kylin Logo (Remove ANSI codes) (#1760)
  * Stat: use `ESC 7/8` instead of `CSI s/u`
  * Doc: Add information of where to find example config files (#1759) [ci skip]
  * fish complete: add `--logo-color-[1-9]` completion (#1754)
  * Packaging: update debian stuff [ci skip]
  * CI: silence spell check errors
  * GPU (Linux): embed asahi_drm.h
  * 3rdparty (yyjson): upgrade to 0.11.1
  * PhysicalDisk: trim white spaces of serial
  * Doc: update changelog
  * Media (Windows): detect player name (UMP apps only)
  * Doc: update changelog
  * GPU (AMD): remove usage of `ADL2_Adapter_VRAMUsage_Get`
  * Release: v2.43.0
  * Revert "Vulkan: use `VK_API_VERSION_*` instead of deprecated `VK_VERSION_*`"
  * Sound (macOS): report the volume of muted device as 0%
  * Sound: don't show 255 in custom format
  * Vulkan: use `VK_API_VERSION_*` instead of deprecated `VK_VERSION_*`
  * GPU (Linux): fix CI errors
  * GPU (Linux): detect core usage when libamdgpu is not available
  * GPU (Linux): detect VRAM type of AMD GPUs
  * Smbios: fix transitive include for `loff_t` (#1746)
  * GPU (AMD): seems `ADL2_Adapter_VRAMUsage_Get` reports system mem usage only, not full memory usage
  * GPU (AMD): more verbose logs
  * GPU: don't hide unknown type of GPUs by default
  * Smbios: discard usless values
  * Media (Linux): fix duplicated playback status
  * GPU (Windows): fix incorrect used shared memory size
  * Memory / Swap: always initialize local variables
  * GPU: optionally hide unknown GPUs (#1742)
  * Logo (Builtin): add Hydra Framework logo (#1740)
  * Builtin (Logo): new AthenaOS logo
  * Logo (Builtin): `sd '\$\{c(\d)\}' '$$$1' *`
  * TerminalShell: use ffBinaryExtractStrings result as possible (#1739)
  * DisplayServer (Linux): fix xcb_connect error handling (#1735)
  * 3rdparty: upgrade yyjson to 0.11.0
  * Media (macOS): support macOS 15.4
  * GPU (Linux): fix asahi linux support again
  * Disk (Linux): fix possible bug on 32-bit platforms
  * CPU (FreeBSD): simplify physical core count detection
  * CPU (SunOS): support physical core count and package count detection
  * Display: use height to calculate scale factor
  * CPU (Windows): always use `XxxW`
  * Global: Improve `ARRAY_SIZE` macro using `__is_array`
  * Parsing: silence compiler warnings
  * Packaging: update debian stuff [ci skip]
  * Wifi (NetBSD): fix the ambiguous comment
  * Wifi (BSD): correctly prioritize Wi-Fi protocol detection
  * Release: v2.42.0
  * BIOS: normalize the module name
  * Uptime: fix non-normalized time being shown
  * Global: use ARRAY_SIZE (#1718)
  * Bluetooth (Linux): silence an unused variable warning (#1717)
  * Platform: fix a memory leak (#1716)
  * Doc: update changelog [ci skip]
  * Logo (Chafa): fix setting `chafa.symbols`
  * Camera (OpenBSD): add support
  * CPU (OpenBSD): fix CPU temperature detection
  * Refactor: inline printError into ffPrintError and remove unused static helper
  * Wifi (FreeBSD): fix possible mem leaks
  * Wifi (NetBSD): add support
  * Wifi (OpenBSD): fix file name
  * CPU (NetBSD): add one more method to detect CPU frequency
  * CPU (SunOS): detect CPU temp
  * Logo (Builtin): Add Codex Linux support (#1701)
  * Logo (Builtin): remove GoralixOS
  * Logo (Builtin): add Aurora
  * PhysicalDisk (Linux): don't detect disk type of virtual disks
  * T2/SDE: upstreaming downstream's logo change (#1695)
  * Color: support #RGB and #RRGGBB
  * Packaging: update debian stuff [ci skip]
  * Processing (Windows): fix macro name `__aarch64__`
  * Chore: remove Chinese comments [ci skip]
  * CI (Linux): enable chafa on Linux aarch64
  * CI (Linux): bump GH runner for linux-amd64
  * Release: v2.41.0
  * Bluetooth (NetBSD): add base implementation
  * Doc: add installation instructions for pkgsrc [ci skip]
  * Uptime (Windows): use `QueryUnbiasedInterruptTime`
  * CMake: use mincore on WoA
  * Processing (Windows): use `GetOverlappedResultEx` on WoA
  * CI (Windows): add WoA
  * GPU (Linux): add temp detection for Intel GPU
  * NetIO (Linux): use `openat`
  * Logo (Builtin): Add 2 more Alpine logos (#1687)
  * CPU (Linux): fix build
  * Chore: simplify `fastfetch.h`
  * Wifi (FreeBSD): remove unused sys headers
  * CPU (Linux): add new ARM part numbers
  * Wifi (OpenBSD): add support
  * Doc: add comments about displaying image logo on Windows [ci skip]
  * WM (FreeBSD): enable Hyprland version detection
  * CPU (Windows): use PDH to detect thermal temp
  * Logo (Builtin): Add support for anduinos (#1684)
  * Platform: retrieve full user name
  * Fastfetch: fix loading presets in `{exePath}/presets`
  * IO (Windows): support `~` expanding
  * Chore: update comment
  * Util (Windows): use native win32 functions
  * WM (Linux): remove `v` from Hyprland version
  * Packages (Linux): add soar packages count (#1531)
  * PhysicalDisk (Linux): add more disk types
  * PhysicalDisk (Linux): don't detect disk type for virtual disks
  * Revert "CPU (FreeBSD): remove using of freq_levels"
  * CPU (FreeBSD): don't assume one SMT group has only two threads
  * CPU (Linux): detect physical core count on non-x86 platforms</changelog>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1751112000">- Update to version 2.46.0:
  * Doc: update changelog [ci skip]
  * Logo (Builtin): simplify kali linux
  * Logo (Builtin): add Kalpa Desktop
  * Release: v2.46.0
  * Doc: update `help.json`
  * Logo (Builtin): rename hydra framework to hydrapwk
  * Chore: code cleanups
  * Global: add missing O_CLOEXEC to open()
  * GPU (Linux): fix an issue which vram_usage is bigger t han vram_visible
  * GPU (Linux): detect shared vram usage of AMD GPU
  * GPU (Linux): correctly call radeon driver
  * GPU (FreeBSD): fix mem leaks
  * GPU (Windows): fix build
  * GPU (Linux): fix building without features
  * GPU (Linux / FreeBSD): add DRM detection support for old radeon driver
  * GPU (Linux / FreeBSD): unifies DRM related code and code clean up
  * GPU (FreeBSD): support detection by DRM [wip]
  * WM (FreeBSD): fix Hyprland version detection
  * GPU (macOS): detect Metal 4 support
  * OS (macOS): seems macOS 26 Beta 1 still reports itself as macOS 16. Honor it.
  * CI: upgrade OpenBSD version
  * CI: split amd64 and arm64 builds
  * Kmod: remove Chinese comments [ci skip]
  * Board (macOS): detect board-id if available
  * Logo (Builtin): add GhostFreak
  * Logo (Builtin): added AnushOS (#1806)
  * Global: set `SetErrorMode(SEM_FAILCRITICALERRORS)` globally
  * Logo (Builtin): Add HarmonyOS support (#1804)
  * Packages (OpenBSD): fix counting by ignoring hidden folders
  * CPU (NetBSD): properly support PowerPC (#1802)
  * WM (MacOS): Added Aerospace WM detection
  * DE (macOS): report Liquid Glass on macOS 26+
  * OS (MacOS): add macOS 26 Tahoe
  * Logo (Builtin): detect and add TrueNAS Scale
  * OS (Linux): detect Raspberry Pi OS
  * Disk (Linux): hide `/boot/firmware` by default
  * Logo (Builtin): add xenia_old; update colors of xenia
  * TerminalFont: support rio terminal emulator (#1789)
  * JsonSchema: document `swap.separate`
  * CPU (Windows): use `perflib.h` instead of `pdh.h` for querying CPU temp
  * Logo (Builtin): improve colors of bedrock_small
  * Host (Linux): detect Linux Binary Compatibility on FreeBSD
  * Host (Linux): more detailed info of WSL
  * Logo (Builtin): Add Fedora2_small (#1785)
  * Packaging: update debian stuff [ci skip]</changelog>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1752840000">- Update to version 2.48.1:
  * Release: v2.48.1
  * WM (Linux): fix a copy-paste error
  * Modules: don't report errors when `condition` key is set
  * Packages: add new option `--packages-combined`
  * JsonConfig: add `modules[n].condition` to run modules conditionally on different platforms
  * Version: replace `WIN32` with `Windows` and `Darwin` with `macOS`
  * Processing (*nix): fix compiling on Android 7
  * Processing (Windows): redirect unused std handles to `NUL` to avoid potential errors
  * Processing (*nix): use traditional `fork-exec` on Android and OpenBSD
  * Packaging: update debian stuff [ci skip]
  * WM (Linux): add Openbox version detection
  * Chore: silense compiler warnings
  * Doc: optimize README; fix typo
  * Release: v2.48.0
  * Logo: partially revert c5c0e54
  * Separator: remove `formatArgs`
  * Display: add option `--fraction-ndigits`
  * Uptime / Users: add `years`, `days-of-year` and `year-fraction`
  * Chore (Linux): silience compiler warnings
  * JsonSchema: update `xxxFormat` [ci skip]
  * Disk: add keys `years`, `days-of-year` and `years-fraction`
  * Logo (Builtin): rename ada to xray_os (#1845)
  * CMake: reconfigure after adding / removing logos
  * README: document how to run multiple modules on command line [ci skip]
  * Processing (Linux): cache the index of `$LANG`
  * README: add DeepWiki badge [ci skip]
  * GPU (Windows): fix compiling on x86-32
  * Logo: don't print builtin logo if the provided logo source cannot be found
  * Logo: load `.raw` files as raw image file
  * Logo: don't load text files as image file
  * Logo: don't parse file paths as builtin logo name
  * GPU (Windows): more method to detect device name
  * GPU (Windows): detect GPU frequency by default
  * GPU (Intel): prefer matching GPU with bus id
  * Packages (Linux): clean up nix user package detection
  * Packages (Linux): add /etc/profiles/per-user detection for nix user packages
  * GPU (Windows): ignore invalid temps
  * GPU (Windows): greatly improve performance of GPU temp detection
  * Logo (Builtin): add AxOS
  * Logo (Builtin): add the Minimal System logo (#1837)
  * Revert "GPU (macOS): update how integrated GPUs are detected"
  * CI (Haiku): Apply work-around for work directory
  * Sound (macOS): improve device id detection
  * Processing (Linux): use `posix_spawnp` for better performance
  * Chore (Linux): silence compiler warnings
  * GPU (Windows): use nvapi to detect GPU type
  * GPU (Windows): clean up
  * Chore (Windows): tidy
  * GPU (Windows): fix Win7 compatibility
  * GPU (Windows): new method to detect device type
  * GPU (Windows): add driver version fall back
  * CMake (Windows): remove `setupapi` dependency
  * Battery (Windows): use `CMAPI` instead of `SetupAPI`
  * GPU (Windows): use `CMAPI` instead of `SetupAPI`
  * Presets: add a new example
  * PhysicalDisk: unifying white space trimming
  * OS (Linux): detect fedora variants
  * Chore: Add a missing semicolon (#1828)
  * Packaging: update debian stuff [ci skip]
  * OS (Linux): remove duplicated code
  * Doc: update README [ci skip]
  * CMake: remove the unused option `ENABLE_CPUUSAGE_PERFLIB`
  * Release: v2.47.0
  * README
  * Logo (Builtin): always use `FG_DEFAULT` on title and keys
  * Logo (Builtin): fix colors of raw Linux logo
  * Logo (Builtin): fix colors of DragonFly
  * Revert "Logo (Builtin): `:%s/FG_WHITE/FG_DEFAULT/g`"
  * CPUUsage (Windows): detect perflib support dynamically based on OS version
  * OS (Linux): add support of Xubuntu
  * CPUUsage (Windows): disable `ENABLE_CPUUSAGE_PERFLIB` by default
  * CMake: fix typo
  * CPUUsage(Windows): add new method using Windows Performance Library
  * CMake (SunOS): drop pciaccess dependency
  * Chore (Windows): move `perflib_.h` to somewhere global
  * Terminal (Linux): ignore `init` and `systemd`
  * CpuUsage (Windows): refine KernelTime calculation by removing unused DPC and interrupt time
  * CpuUsage (Linux / BSD): include interrupt and softirq times in CPU usage calculations
  * IO: increase `PROC_FILE_BUFFSIZ` to avoid possible short reads
  * README: add the OpenBSD and DragonFly installation method [ci skip]
  * Media (macOS): support old macOS version
  * Media (macOS): simplify now playing handling
  * Logo (Builtin): `:%s/FG_WHITE/FG_DEFAULT/g`
  * Display (FreeBSD): silence a compiler warning
  * GPU (FreeBSD): fix compiling when libdrm is not available
  * OS (Linux): append version string for Ubuntu variants
  * GPU (OpenBSD): fix pci.ids file location
  * OS (macOS): force reporting 26 on macOS Tahoe
  * OS (Linux): improve RPIOS detection
  * OS (Linux): use `ffStrbufSetStatic` where applicatable
  * OS (Linux): clean up dietpi related code
  * OS (Linux): detect DietPi
  * CI (FreeBSD): run with 14.3
  * Sound (SunOS): rework; drop pulseaudio dependency
  * Shell (SunOS): ignore leading `-`
  * GPU (SunOS): simplify
  * PhysicalDisk (SunOS): rework; support more device types
  * PhysicalDisk (SunOS): add support
  * Logo (Builtin): use FG_DEFAULT instead of FG_WHITE
  * GPU (SunOS): rework GPU detection
  * Chore: remove useless semicolons
  * BIOS (SunOS): detect BIOS type
  * OS (macOS): remove useless code
  * Packaging: update debian stuff [ci skip]</changelog>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1754049600">- Update to version 2.49.0:
  * Battery / Uptime: update document of custom format
  * Battery: address copilot feedback
  * WM (Linux): fix a copy-paste error.
  * Release: v2.49.0
  * Doc: update readme
  * Percent: add option `--percent-width`
  * Uptime / Battery: add formatted duration string in custom format
  * Global: add new unit related options
  * DiskIO: fix wrong `/s` assignment in custom format
  * Packages (Windows): find scoop installation path by parsing scoop config file
  * Font (Linux): parse unicode escaped string stored by qt5ct
  * FFstrbuf: add function `ffStrbufAppendUtf32CodePoint`
  * GPU (Intel): read render engine temperature only
  * WM (Linux): add labwc version detection support
  * CPU (Android): make SOC detection more loose
  * CPU (Android): add more QSD SOCs
  * Disk: update default value of `hideFolders`
  * Packages (Windows): don't rely on the existance of `$SCOOP` when detecting scoop packages
  * Logo (Builtin): remove Evolinx
  * GPU (macOS): silence compiler warnings
  * Wifi (macOS): use `sudo wdutil info` on Tahoe
  * FFstrbuf: add function `ffStrbufSubstr`
  * Chore: add FF_C_NONNULL
  * Version: correct the variable name 'name' to 'project-name'
  * Users: correct the variable name 'session' to 'session-name'
  * LocalIP: cleanup printing code
  * LocalIP (Windows): fix link speed calcuation
  * LocalIP (Windows): ignore stopped interfaces
  * Netif (Windows): correct default route detection (v2)
  * JsonSchema: improve definitions of `colors` and `conditions` [ci skip]
  * CI (Haiku): remove work around
  * Editor: correct the variable name `full-path` to `path`
  * Wifi (Linux): fix interface status when the interface is up but not connected
  * Presets: improve `25.jsonc`; add verbose comments [ci skip]
  * Netif (Windows): fix default route detection when the default adapter is disabled
  * CI (NetBSD): remove opencl support to fix building
  * Packages (Linux): remove `qi` support
  * Packages (Linux): improve accuracy of flatpak count detection
  * Logo (Builtin): add Aeon
  * GPU (Linux): add GPU temp detection for nouveau driver
  * GPU (Linux): support advanced detection for nouveau driver</changelog>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1755518400">- Update to version 2.50.2:
  * Release: v2.50.2
  * LocalIP: refines default route detection and JSON output for local IPs
  * Netif (Linux): improves default route detection and error handling
  * Netif (Linux): add verbose logs
  * CI: adds default build type to CI environment
  * LocalIP (Linux): add verbose debug log
  * LocalIP (Linux): fixes incorrect return and ensures struct initialization
  * LocalIP: fix `showMac` does not honor `defaultRouteOnly`
  * FFstrbuf: wrap yyjson.h include in conditional
  * Packages (Linux): fixes Linglong detection by counting linglong layers (#1903)
  * Release: v2.50.1
  * Packages (Linux): fixes Linglong detection on Debian (#1899)
  * Percent: refactors bar color logic for clarity and consistency; update examples
  * Revert "Percent: fix a copy-paste error"
  * Packages (Android): fix building
  * Doc: update changelog [ci skip]
  * Doc: update changelog
  * Flashfetch: disable decimal digits in Disk module
  * Separator: honors FQDN settings in Title module
  * Doc: update changelog
  * Fastfetch: adds support for reading JSON config from stdin
  * Chore: removes undocumented flag `--load-config`
  * Doc: update changelog [ci skip]
  * Release: v2.50.0
  * Global: fixes `-ffast-math` compatibility
  * GPU (macOS): don't set `platformApi` to `Metal` when Metal API is not used
  * GPU (Windows): ignore software adapters; add verbose logs
  * Doc: update changelog [ci skip]
  * Cursor (macOS): improves color detection and rounding for cursor info
  * Logo (Builtin): add ObsidianOS (#1890)
  * Packages: unifies Nix package detection code
  * CI: upgrade to `actions/checkout@v5`
  * README: HomeBrew -&gt; Homebrew (#1891) [ci skip]
  * Doc: update README &amp; Changelog
  * OS (Linux): tidy
  * Revert "CPU (macOS): use CPUID for freq detection on Intel"
  * CI (Haiku): reduce errors when installing deps (hopefully)
  * CommandLine: add `--gen-config-full`
  * Presets: add an example
  * Percent: fix a copy-paste error
  * JsonSchema: remove unused properties [ci skip]
  * Doc: don't recommand Ubuntu PPA [ci skip]
  * OS (Linux): fix lliurex detection (#1882)
  * DisplayServer: merge `serverVender` into `wmProtocolName`
  * Display (Linux): show brand of Xserver in WM section (#1888)
  * Chore: remove unused functions
  * Netif (SunOS): work around a bug that fails to detect default route for IPv4
  * GPU (FreeBSD): fix gpu driver detection when DRM is used
  * CPU (macOS): use CPUID for freq detection on Intel
  * LocalIP (Linux): fix building
  * LocalIP (SunOS): add speed detection support
  * LocalIP (SunOS): support `isIPv6AddressPreferred`
  * LocalIP (SunOS): add more if flags
  * LocalIP (Linux): fix compiler warnings
  * Networking (SunOS): fix compiler warnings
  * Netif (SunOS): fix compiler warnings
  * LocalIP (BSD): fix compiling
  * Wifi: updates default WiFi percentage thresholds
  * LocalIP: improve preferred IPv6 address detection
  * Netif: unifies BSD netif handling
  * Netif (Haiku): add preferred source addr
  * NetIO (SunOS): fix build
  * LocalIP (BSD): fix building
  * Netif: refactor API for dual-stack route detection
  * Display: fix invalid `size.maxPrefix` default value in generated config file
  * Netif (BSD): split different implementations
  * LocalIP: consider preferred source address when retrieving default route (#1883)
  * LocalIP (Windows): show only preferred IP when `showAllIPs` is not set
  * Chore: fix building on Windows
  * JsonConfig: make all non-module keys case-sensitive
  * JsonConfig: write all flags when generating config file
  * Doc: remove command line flags of modules
  * Modules: refactor module option handling for static allocation
  * Modules: export module info
  * Modules: add init and destroy option callbacks to module info
  * Disk (Linux): ignore Bedrock Linux subvolumes
  * OS (Linux): don't detect Bedrock linux when ran restricted
  * JsonSchema: Improves JSON schema enums with oneOf objects containing descriptive explanations for allowed values
  * GPU: support `"hideType": null`
  * Display: add `compactMode: null`; improve json schema
  * Modules: remove all `parseCommandOptions` and related stuff
  * JsonSchema: small improvements
  * Display: allow `"compactType": null`; improve json schema
  * Disk: add missing JSON config options
  * Percent: silense compiler warnings
  * JsonConfig: refactor JSON key handling to improve safety and consistency
  * JsonConfig: refactor string buffer JSON handling for robustness
  * Doc: update changelog; fix typo
  * Presets: add new config; fix old config
  * Option: fix a possible null reference segfault
  * Doc: update changelog [ci skip]
  * Bar: refactor config to use nested objects and deprecates old fields
  * Bar: add customizable bar color options for percentage bars
  * Bar: add configurable elapsed bar borders for percent bars
  * Wifi (macOS): disable using of `ipconfig` on 15.6 too
  * Chore: remove sensitive data [ci skip]
  * Changelog: fix typo [ci skip]
  * Packaging: update debian stuff [ci skip]</changelog>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1759060800">- Update to version 2.53.0:
  * CI: fix release action
  * Packaging: updates debian stuff [ci skip]
  * Release: v2.53.0
  * CPU (Android): adds support for new Qualcomm and MediaTek SoC codes
  * Doc: update changelog [ci skip]
  * CPU (Linux): adds support for new ARM C1 series CPU part IDs
  * Zpool: increase libzfs so version to 6
  * CI: upgrades runner of intel macOS
  * CPU (Windows): refines ARMv8.4-A detection to require LSE2
  * OS (Linux): Better Ubuntu flavor detection
  * Wifi (macOS): add (B)SSID detection back for Tohoe 26.0
  * TerminalFont: improve ghostty with command `ghostty +show-config`
  * Logo (Builtin): update ObsidianOS logo (#1970)
  * Disk: refactors mountpoint matching to use shared string utilities
  * CommandOption: refactors code with `ffStrbufSeparatedContainIgnCaseS`
  * FFstrbuf: adds more functions to match separated strings
  * Gamepad / Keyboard / Mouse: improves device error handling and memory cleanup
  * Gamepad / Keyboard / Mouse: adds support to ignore input devices by name prefix
  * Logo (Builtin): adds TempleOS
  * Disk: allows array input for disk folder and filesystem options
  * CI (Windows): add chafa dependency
  * TerminalFont: Improves Ghostty font config parsing with fallback font detection
  * Revert "Logo (Builtin): add Starry Linux"
  * Disk (Linux): avoids invalid disk creation times before Linux epoch
  * Disk (Linux): replace statx(2) call to syscall(2)
  * CI: adds glibc polyfill step for compatibility
  * CI: merge more jobs
  * CI: update cmake version
  * CI: merge amd64 and aarch64 code with matrix
  * CPU (Windows): trims vendor string read from registry
  * CPU (Windows): handles zero temperature data and refactors value use
  * Wifi (macOS): removes wdutil-based Wi-Fi detection code
  * Presets: add a new example [ci skip]
  * 3rdparty: upgrade widecharwidth
  * CPU (Linux): replaces HWCAP defines with explicit bitmasks for ARM
  * CPU (Linux): add new ARM part numbers
  * LocalIP: adds IPv6 type selection for local IP display
  * Separator: uses widecharwidth for Unicode wcwidth and fixes issue that wchar_t on Windows is 2-byte length
  * Separator: rename property `length` with `times`
  * OpenGL (Windows): simplifies code by removing custom window proc
  * Packaging: update debian stuff [ci skip]
  * Doc: update changelog
  * Global: renames `fractionTrailingZeros` enum to `always/never` for consistance
  * Fastfetch: removes redundant assignment in display config parsing
  * Release: v2.52.0
  * Btrfs (Linux): refactors Btrfs allocation to use profile string
  * Btrfs (Linux): adds tracking of Btrfs data copy counts
  * Terminal: ignores WSL2 unknown process for terminal detection
  * WMTheme (Linux): supports labwc on XFCE4
  * CPU (Linux): add cpu name detection for ia64
  * Doc: update README
  * Settings: renames GNOME settings accessor for clarity
  * Wallpaper (Linux): improves XFCE wallpaper detection via property enumeration
  * Settings: removes direct XFConf support in favor of DBus backend
  * DBus: adds function `ffDBusGetInt`
  * Dbus: adds 2nd argument to ffDBusGetMethodReply
  * CI: bump dependencies
  * Doc: update changelog
  * Fastfetch: improves frequency display config validation and schema
  * Fastfetch: add option `--faction-trailing-zeros`
  * Logo (Chafa): fixes setting `logo.width` with chafa
  * JsonSchema: update
  * Fastfetch: defaults `display.fraction.ndigits` to 2
  * Fastfetch: informs users that module-specific CLI options are no longer supported
  * LocalIP (Linux): skips interfaces without IPs unless MAC display is enabled
  * JsonConfig: fixes `fractionNdigits` will be incorrectly set to `0` when specifying `null`
  * Display: rearranges default format; removes scaled resolution
  * LocalIP: honors `fractionTrailingZeros`
  * Global: adds configurable trailing zeros for double formatting
  * DisplayServer: improves display size rounding and argument clarity
  * Display (Linux): detect scale factor for X11
  * Global (Android): enable X11 related stuff
  * CMake: enable zlib on all platforms
  * DisplayServer (Android): update WM name accurately
  * CMake (Android): link to libm
  * Release: v2.51.1
  * CPU (macOS): removes reliance on unavailable ARM capability headers on macOS
  * Packaging: update debian stuff [ci skip]
  * CPU/GPU (Linux): Improves CPU/GPU temp detection accuracy on Linux/Android
  * Revert "Uptime (Windows): use `QueryUnbiasedInterruptTime`"
  * JsonSchema: update
  * DisplayServer (Linux): upgrade kde-output-device-v2
  * Release: v2.51.0
  * GPU (Android): adds GPU temp detection support
  * Fastfetch: clarify that `--debug` is debug-mode only
  * CPU (Linux): improve temp detection
  * Battery (Android): fix battery temp detection
  * DisplayServer (Android): fix display server name
  * Global: handles missing config directories more gracefully
  * InitSystem (GNU): support shepherd detection
  * CPU (Windows): detects march on WoA
  * CPU (macOS): detects march on Apple Silicon
  * CPU (Linux): detects march on aarch64
  * Processing (Linux): enhances robustness when extracting process name and related fields
  * DiskIO (Linux): trim trailing white spaces
  * Chore: silense compiler warnings
  * CPUUsage: adds user guidance when CPU time fails to increase
  * LocalIP (GNU): adds MAC addr detection support
  * InitSystem: tidy
  * CMake (GNU): disable wifi support
  * Processing (GNU): fix command name reading
  * Common (GNU): more `__GNU__` tests
  * Terminal (GNU): enable version detection
  * Processing (GNU): hurd uses `cmdline` instead of `comm`
  * WM (GNU): enable
  * Global (GNU): code cleanups
  * Chore: tidy tabs
  * CMake (GNU): enable a lot of things
  * localip: Remove AF_LINK on GNU.
  * WIP: shepherd initsystem
  * Fix localip_linux on GNU
  * disable ffPackagesGetNix on when it is not defined
  * Port netif_gnu to the new api.
  * Fork netif_linux to netif_gnu.
  * Start work on GNU
  * TerminalShell: remove special handling of hyfetch
  * Fastfetch: improves config file generation message with tips
  * Chore: silence compiler warnings
  * CPU: fix building on non-x86
  * CPU: adds CPU microarchitecture detection for x64 and reporting
  * Disk: adds formatted free and available disk size fields
  * Logo (Builtin): adds AerynOS
  * Processes (Linux): be compatible with Hurd
  * DisplayServer (Android): update WM name
  * Fastfetch: improves format help output for config and variables
  * WM (Linux): uses the same X11 props as neofetch to query WM name
  * DE (Linux): adds Trinity version detection support
  * GPU (BSD): fallbacks to `pciids/pci.ids`
  * Packaging: update debian stuff [ci skip]
  * GPU (BSD): always use `pci.ids` provided by hwdata
  * Disk: disable hyperlink by default and move it to custom keys
  * TerminalShell (Linux): always ignore pid1 (v2)
  * TerminalShell (Linux): always ignore pid1
  * Disk (Linux): remove unused headers
  * Common: corrects the position for appending milliseconds
  * LocalIP (Linux): improves netlink route parsing by avoiding possible message truncation
  * FFstrbuf: handles double rounding and zero representation in formatter
  * GPU (Windows): improves GPU detection by refining device filtering
  * Shell (Windows): be compatible with fish 4 built by MSYS2
  * Common: refactors number formatting to use type-specific append functions
  * Format: replaces format specifiers with type-safe append functions
  * FFstrbuf: improves double formatting precision handling
  * Duration: use `ffStrbufAppendUInt`
  * FFstrbuf: adds number appending functions
  * Logo (Builtin): honor `logo.width`
  * JsonConfig: support JSON5
  * Common: refactors time formatting to use a shared buffer and utility macro
  * 3rdparty: upgrade yyjson to 0.12.0
  * JsonConfig: adds 'succeeded' module condition to JSON config
  * OS: set the icon of unknown OS type as a cog
  * Modules: return bool to indicate whether the detection is succeeded
  * CI (DFBSD): enable
  * CI (SunOS): fix build
  * CPU (macOS): changes CPU to M2 Pro for Mac14,12 host (#1915)</changelog>
</package>
<package pkgid="e3dd70f1cc408a51d9c1c6f60cbb84fde2e33cda579ffc70360512d0ea039e849cfe689b7661380cfa422eeaea9d98f61f4f048455bb42c6fcefe8247110ac16" name="fastfetch-bash-completion" arch="noarch">
  <version epoch="0" ver="2.53.0" rel="1.10"/>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1731153600">- Update to version 2.29.0:
  * CMake (OpenBSD): enable bluetooth detection
  * CMake (NetBSD): add `/usr/pkg/lib` to rpath
  * GPU: fix build if libpciaccess is not available
  * Camera (OpenBSD): add support (?)
  * OpenGL (NetBSD): use correct so file
  * Release: 2.29.0
  * OS (BSD): don't check for debian and ubuntu variants
  * OS (Linux): fix build
  * Library (Windows): load dlls at current exe path
  * Vulkan: drop windows-i686 support
  * Logo (Builtin): add Lilidog
  * OS (Linux): detect Lilidog
  * CI: remove windows-i686
  * Doc: update changelog
  * CI (DragonFly): build with chafa &amp; libelf
  * Libc (BSD): always initialize variables
  * Libc (DragonFly): add support
  * CI: build on DragonFly
  * Netif (SunOS): fix compiling
  * Sound (DragonFly): add support
  * DiskIO (DragonFly): add support
  * Doc: update changelog
  * OS (Linux): improve performance of proxmox version detection
  * Global: support DragonFly BSD
  * Brightness (NetBSD): disable
  * Doc: update changelog
  * Logo (Builtin): update OpenSUSE Leap
  * CI (NetBSD): release NetBSD
  * CI: remove libv4l
  * NetIO (*BSD): support OpenBSD &amp; NetBSD
  * Users (OpenBSD): add support
  * DiskIO (SunOS): remove dev path
  * DiskIO (OpenBSD): add support
  * DiskIO (NetBSD): add support
  * Logo (Builtin): make aperture colorable
  * CI (OpenBSD / NetBSD): embed pci.ids
  * Processes (NetBSD): add support
  * GPU: use `pciaccess` to enumerate PCI devices
  * CMake (NetBSD): set rpath
  * CPU (Android): add QS8E
  * Bios (NetBSD): try detecting boot method
  * Shell / Terminal: fix proc path detection
  * Platform (NetBSD): fix exe path detection
  * Disk (NetBSD): fix disk size detection
  * CPU (NetBSD): add support
  * Packages (NetBSD): add support
  * Keyboard (Linux): silence compiler warnings
  * CMake (*BSD): detect videodev2
  * CI (NetBSD): try fixing build
  * CI (NetBSD): add more dependencies
  * DisplayServer (Linux): silense compiler warnings
  * Global: remove stb_printf
  * Disk (OpenBSD): fix build
  * CMake (NetBSD): detect X11 and other packages
  * Disk: support NetBSD, improve hidden partition detection
  * NetBSD: support CPUUsage / Memory / Swap
  * CMake: allow to replace native *printf to stb_*printf
  * CI: fix a copy-paste error
  * Uptime (NetBSD): fix invalid result
  * CI: try adding netbsd
  * Global: make it compile on NetBSD
  * Logo (Builtin): update PikaOS (#1361)
  * Logo (Builtin): add SummitOS
  * Logo (Builtin): add XCP-ng
  * Logo (Builtin): update OpenSuse Tumbleweed
  * Global: overall optimization
  * 3rdparty: add stb_sprintf
  * Editor: fix the Vim version detection (#1356)
  * CMake: define `NOMINMAX` on Windows
  * CMake: use 64bit time_t on Linux
  * Editor: optimize editor version parsing (#1355)
  * Packaging: update debian stuff [ci skip]</changelog>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1731931200">- Update to version 2.30.1:
  * CMake: check return code of python scripts
  * Release: v2.30.1
  * CMake: fix the destination where `fastfetch_pciids.c.inc` is generated
  * CMake: Fixed the destination where fastfetch.1 is generated. (#1403)
  * Packaging: update debian stuff [ci skip]
  * Release: v2.30.0
  * Doc: remove guix package installer as it's outdated [ci skip]
  * Display: concat flags
  * GPU (Windows): fix a bad assignment
  * Terminal (Linux): support tilix version detection
  * NetIO (BSD): remove unnecessary checks
  * NetIO (BSD): add txDrops detection if supported
  * NetIO (macOS): fix 32bit trancation
  * Scripts: `gen-man.py` honors SOURCE_DATE_EPOCH. (#1400)
  * Logo (Builtin): update openSUSE Tumbleweed
  * Doc: update changelog [ci skip]
  * Percent: in custom format, only set num and bar string if enabled in percent config
  * Doc: update schema for percent type config
  * Percent: allow use enum to set type value in JSON config
  * Global: support percent type config in module level
  * Global: pack all enums and make flag enums unsigned
  * CPU (Linux): add more Apple SOC code names
  * Host (Android): detect marketing name of vivo smartphone
  * IO (macOS): fix logo fails to load from symlinked files
  * Processing (macOS): fix exe path detection
  * Util (macOS): cleanup `cf_helpers.c`
  * CMake: use `gen-man.py` to generate man file
  * Scripts: clean up `gen-man.py`
  * Scripts: make `gen-pciids.py` executable
  * Scripts: Add python script to generate man page (#1392)
  * GPU (macOS): apply the same logic as CPU just in case
  * CPU (macOS): try fixing CPU freq detection on Apple M4
  * Media (macOS): try fixing error `CFStringGetCString() failed`
  * Smbios: clean up more garbage values
  * StringUtil: rename `ffStrCopy` and correctly reflect its usage
  * Shell (macOS): try fixing segfault in old macOS
  * DisplayServer (NetBSD): detect WM / DE by process name
  * Packages (Linux): add qi support
  * Revert "IO: optimize createSubfolders (#1382)" (#1390)
  * tests: add FFstrbuf smallest allocation test &amp; minor fix (#1387)
  * Logo (Builtin): add cosmicDE logo (#1386)
  * Doc: fix typo in README (#1385) [ci skip]
  * OS (Android): display android icon
  * Logo (Builtin): add Unifi
  * CPU (OpenBSD): support CPU temp detection
  * Disk: be able to print disk indices
  * Battery: don't print index in multi-battery device
  * Sound (BSD): trim device names
  * Version (MidnightBSD): support libc version detection
  * Packages (BSD): support mport
  * Logo (Builtin): add MidnightBSD
  * FFstrbuf: fix small FFstrbuf allocations in ffStrbufEnsureFree (#1383)
  * IO: optimize createSubfolders (#1382)
  * DisplayServer: fix deprecation warnings
  * Host (macOS): add HwModel support for new Mac (2024) (#1381)
  * Bluetooth (Windows): detect battery level
  * Bluetooth (Windows): detect battery (WIP)
  * Logo (Builtin): fix Lilidog
  * FFstrbuf: correct definition of `StrStrIA`
  * Bluetooth (Windows): fix mac address detection
  * CMake: Add initial support for MidnightBSD (#1377)
  * Bluetooth (macOS): normalize mac address strings
  * Bluetooth (macOS): support battery level detection
  * Monitor: don't display `()` if display name is not available
  * Display: add `hdr-compatible`
  * Packaging: update debian stuff [ci skip]</changelog>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1733227200">- Update to version 2.31.0:
  * Display (Linux): detect bit depth when libdrm is used
  * Terminal: Support sakura version &amp; font detection
  * Release: v2.31.0
  * Processing (Linux): interrupt poll &amp; read syscalls when the child process is exited
  * Wifi (Linux): detect Wifi-7
  * Wifi (Windows): make unit of bitrates be consistant
  * Completion (Zsh): fix syntax error in completion file (#1421)
  * WM (Linux): fix wl-restart parsing (#1422)
  * Logo (Builtin): add Windows Server 2025
  * GPU (Linux): detect GPU NV type
  * CPU (Windows): code cleanup
  * CPU (Linux): support up to 128-socket boards
  * CPU: change `cpuCount` to `packages`; support custom format
  * CPU: remove duplicate whitespaces in CPU name
  * CPU (Linux): refactor; fix cpu count detection
  * Support for dual CPU systems  (#1417)
  * CI: fix building on macOS
  * Display (macOS): don't crash with NULL pointer references
  * Logo (Builtin): update MidOS
  * OS (Linux): check for lmde
  * Scripts: use datetime to get date and set timezone to UTC (#1410)
  * Display: change physical size detection to use basic display parameters
  * Users: fix invalid var name
  * Wifi (FreeBSD): support channel &amp; frequency detection
  * Wifi (Android): silence compiler warnings
  * Chore: silence some warnings
  * Wifi (Android): report more props
  * Wifi: print channel band
  * Wifi (Linux): detect frequency &amp; channel number
  * Wifi (macOS): fix build on old OS version
  * Display: report ppi to 0 if screen size is not available
  * Wifi: detect channel and frequency
  * Display: don't report screen size when display is mirrored
  * CMake: fix possible linking errors in `BINARY_LINK_TYPE=dynamic` mode
  * Display (Linux): fix preferred resolution detection for wayland
  * Display (FreeBSD): fix build
  * Display: print preferred resolution &amp; refresh rate in custom format
  * Display: add scale factor in custom format
  * Display (Android): fix build
  * Display (Windows): detect preferred resolution &amp; refresh rate
  * Display (macOS): detect maximum resolution &amp; refresh rate
  * Display (Linux): detect preferred resolution and refresh rate
  * DisplayServer (Linux): remove support of xcb &amp; xlib
  * Wifi (Linux): improve performance
  * DBus: use `general.processingTimeout` as its timeout instead hard coding
  * Media (Linux): improve performance of dbus communication
  * mtgpu: header file cleanup for forward compatibility (#1405)
  * Packaging: update debian stuff [ci skip]</changelog>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1734523200">- Update to version 2.32.1:
  * Release: v2.32.1
  * Packages (OpenBSD): fix a typo that prevents package counting from working
  * Packaging: update debian stuff
  * Release: v2.32.0
  * Revert "Display (Linux): prefer detecting physical size from EDID"
  * Wifi (FreeBSD): early break if the interface is not associated
  * WM (Linux): added ratpoison window manager (#1442)
  * Version: fix format parameter name
  * Logo (Builtin): improved debian ascii logo (#1441)
  * OpenGL (NetBSD): try fixing build
  * Display (FreeBSD): don't try to use `/sys` on FreeBSD
  * WM (FreeBSD): improve WM detection for Wayland
  * OpenGL (NetBSD): fix build
  * OpenGL (EGL): prefer surfaceless display
  * Add Armbian-unofficial detection (#1436)
  * Logo (Builtin): add Ultramarine Small
  * WM (OpenBSD): fix process enumeration
  * Display (Linux): clean up
  * WM: add support for fvwm (OpenBSD) and ctwm (NetBSD)
  * Scripts: fix typo
  * OpenGL (Linux): suppress IO
  * CPU (ARM): add more apple cores
  * CPU (Linux): detect Virtualized Apple Silicon
  * Doc: update changelog [ci skip]
  * Logo (Builtin): add Serpent OS
  * JsonSchema: fix typo
  * OS (Linux): detect Linux Lite
  * JsonSchema: add documentation of format args
  * Fastfetch: add `-h format-json`
  * Global: refactor code of `-h &lt;module&gt;-format`
  * Host: silence compiler warnings
  * Host (Sun): fix build
  * Host: detect mac model in FreeBSD &amp; Windows
  * Edid: use screen size in DTD if make sense
  * Host (Linux): report mac product name
  * Wifi (Linux): fix bssid formatting
  * Logo: randomly select one if the logo source expands to multiple files
  * GPU (OpenBSD): fix `pci.ids` file location
  * Packaging: update debian stuff [ci skip]</changelog>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1735214400">- Update to version 2.33.0:
  * Release: v2.33.0
  * Doc: update changelog [ci skip]
  * Media (Linux): set player name manually for musikcube
  * Logo (Builtin): add GoralixOS
  * Media: make it able to print player info in custom format
  * Media (Linux): report player name
  * Vulkan (Android): hard code path of `libvulkan.so`, so that users don't need to install vulkan-loader wrapper of termux
  * Media (Linux): Fix #1461 (WIP)
  * Doc: update changelog [ci skip]
  * Logo (Builtin): add NurOS
  * Doc: add comments for running fastfetch in root
  * DiskIO (OpenBSD): remove debug output
  * PhysicalMemory: clean up garbage data
  * CPU (NetBSD): fix typo
  * Battery (OpenBSD): fix build
  * Battery (NetBSD): add support
  * Bluetooth (BSD): disable
  * CPU (NetBSD): trim CPU vendor
  * Brightness (NetBSD): don't error out if the screen idx isn't 0
  * Version (NetBSD): report sysname
  * CPU (NetBSD): support temp and frequency detection
  * SMBIOS (NetBSD): add more data
  * Battary (NetBSD): some basic investigation of acpi battery detection
  * Battery (OpenBSD): add support
  * Brightness (OpenBSD): add support
  * Brightness (NetBSD): add support for builtin display
  * Bluetooth (Windows): silence compiler warnings
  * CMake: Add a cmake option to make flashfetch target optional (#1455)
  * PhysicalDisk (Linux): fix interconnect type detection
  * Bluetooth (Linux): improve performance
  * TerminalShell (Android): ignore proot
  * Bluetooth (Windows): optimise
  * Bluetooth (macOS): don't report disconnected devices if `showDisconnected == false`
  * Bluetooth (Linux): improve performance when `showDisconnected == false`
  * BluetoothRadio (Linux): improve performance by reducing size of dbus response
  * FFlist: fix return value of `ffListPop`
  * OS (Linux): Refactor Armbian version detection and add support for ubuntu-based armbian detection (#1447)
  * Shell (Windows): use $POWERSHELL_VERSION if available</changelog>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1736596800">- Update to version 2.34.0:
  * Media (Linux): remove unused variables
  * Doc: update JSON schema [ci skip]
  * Processing (Windows): fix get current process
  * OpenGL (EGL): try GLES 2.0+; then fallback to 1.1 if failed
  * Release: v2.34.0
  * OpenGL (Android): enable support
  * OpenGL (Android): request GLES 2+
  * Battery (NetBSD): fix battery percentage detection
  * Packages (Linux): rename am-user to appman
  * Packages (Linux): remove possible final newlines in am config
  * General: don't suppress the output of `preRun`
  * Packages (Linux): support am-user
  * WMDE: detect Sway by env variables
  * CPU (Android): check for MTK D9X00 SOCs
  * feat: Add Rhino Linux ASCII (#1487)
  * CMake (Android): set rpath for system Android libs
  * Sound: detect platform API
  * Processing (Windows): early return if `OpenProcess` failed
  * Logo (Builtin): add snigdhaos ascii (#1485)
  * fixing fastfetch wrong colors for xray_os logo (#1486)
  * Doc: update changelog [ci skip]
  * CI (Linux): add Linux ppc64le platform (#1484)
  * CPU (Linux): fix var content was unexpectedly modified
  * OS: prefer pretty names
  * CPU: fix core count output in multi-package platforms
  * CPU (Linux): detect TZ temp if CPU temp is not available
  * Packages (macOS): remove redundant tokens
  * Logo (Builtin): add the Lubuntu logo (#1481)
  * Doc: update README [ci skip]
  * FFstrbuf: improve performance of copying static strings
  * Terminal (Linux): fix detection of `pk-command-not-found`
  * TerminalShell (Linux): relax detection of terminals in NixOS
  * Doc: update README.md
  * Logo (Image): mark ghostty supports kitty image protocol
  * TerminalSize (Linux): enable fast path when stdout is redirected.
  * WM (Linux): detect WM version
  * WM (Linux): add sway version detection
  * Terminal (macOS): improve performance of kitty version
  * WM (Windows): detect version of DWM
  * WM (Linux): don't crash if no wm is detected
  * WM (macOS): add WindowServer version detection
  * WM: report version field in custom and JSON output
  * WM: Add support for detecting window manager versions, add support for Hyprland version (#1472)
  * Logo (Image): add `--kitty-icat`; honor `--logo-height` if set
  * Logo (Image): support generate image data via `kitten icat`
  * Revert "GPU: support detection by EGLext"
  * Brightness (FreeBSD): fix backlight name detection
  * TerminalFont (macOS): fix ghostty font detection; default to `JetBrains Mono`
  * Platform (Linux): fix exe path detection (#1468)
  * Bluetooth (DragonFly): disable module to fix build
  * GPU (EGLext): fix build on old systems
  * TerminalFont: support Ghostty
  * GPU: rename `ffGetGPUVendorString` to `ffGPUGetVendorString`
  * GPU: support detection by EGLext
  * Bluetooth (FreeBSD): add support (not tested)
  * CI: update *BSD versions
  * Host (macOS): fix thunderbolt version of new MBPs
  * Packaging: update debian stuff [ci skip]</changelog>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1736769600">- Update to version 2.34.1:
  * Sound: fix a memleak
  * Chore: fix spelling
  * CPU (BSD): improve base freq detection
  * Release: v2.34.1
  * fix(logo): Rename *_LOGO_SMARTOS to *_LOGO_SNIGDHAOS (#1502)
  * Logo (Builtin): add Oreon
  * Logo (Builtin): add HeliumOS
  * Memory (NetBSD): change formula to be consistant with other systems
  * Memory (OpenBSD): update formula to be consistant with other systems
  * Logo (Builtin): add netbsd_small
  * CI: fix build
  * DisplayServer (Linux): upgrade wayland protocol `kde-output-device-v2`
  * DisplayServer (Linux): check HDR support with `xx_color_manager_v4_interface` (WIP)
  * Media (Linux): use file name as media name if song title is not available
  * CPU (FreeBSD): bind process to the first 2 cores
  * chore: remove unnecessary NULL checks
  * TerminalFont (macOS): fix Ghostty termfont detection
  * GPU: set GPU vendor string when using OpenGL backend
  * Packaging: update debian stuff [ci skip]</changelog>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1737892800">- Update to version 2.35.0:
  * Thread: optimise locking (unused though)
  * CPU (Linux): add comments
  * Release: v2.35.0
  * PhysicalDisk: change temp range to 50-70 °C
  * Doc: update changelog again [ci skip]
  * Doc: update changelog [ci skip]
  * Doc: update json_schema [ci skip]
  * Doc: update changelog [ci skip]
  * Disk / Users: support duration printing in custom format
  * Doc: update changelog
  * CPU (Android): add QS8E for Galaxy
  * CMake: add option `-DCUSTOM_LSB_RELEASE_PATH`
  * OS (Linux): acquire more os info from lsb-release if missing from os-release
  * Logo (Builtin): fix more escape problems
  * Logo (Builtin): fix OpenBSD &amp; OpenBSD_small
  * Logo (Builtin): Add KDE Linux logo (#1523)
  * CPU (Android): detect new QS8E
  * CPU (Linux): detect SOC name on RISCV
  * Doc: update changelog [ci skip]
  * Presets: fix percentage number printing in examples/20 [ci skip]
  * Disk (NetBSD): silence compiler warnings
  * Doc: update feature_request issue template
  * Display (Linux): return reason if errored
  * Packages: fix file type check
  * Packages (SunOS): fix building
  * Packages: add pkgsrc; code refactor
  * Doc: update issue templates [ci skip]
  * CI: add linux-armv6
  * OpenGL: suppress output of EGL again
  * Doc: update more issue templates [ci skip]
  * Doc: split bug report issue template into smaller parts [ci skip]
  * CPU (Linux): query SOC name in cpuinfo for aarch64
  * TerminalShell (Linux): ignore proot
  * Logo (Builtin): update netbsd small
  * Logo (Builtin): add Arch Old
  * Chore: forbid using of VLAs
  * Packaging: update debian stuff [ci skip]</changelog>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1739448000">- Update to version 2.36.1:
  * Release: v2.36.1
  * CI: fix typo
  * CMake (Haiku): set `_GNU_SOURCE`
  * Logo (Builtin): fix Chimera Linux distro name to match ID (#1554)
  * Logo (Builtin): correct shape of ALT Linux (#1553)
  * CI: build with chafa &amp; ddcutil (aarch64)
  * CI: update artifact names of armv6l and armv7l
  * Doc: update readme
  * CI (Linux): use native aarch64 runner
  * CI (NetBSD): update OS version to 10.1
  * Packaging: update debian stuff [ci skip]
  * CI: add linux-s390x
  * CPU: remove useless `w/ Radeon 780M Graphics`
  * Terminal (Linux): improve performance of Tilix version detection
  * Release: v2.36.0
  * OpenGL (Haiku): enable support
  * Format: support syntax of `{$ENV_VAR}` in custom format
  * Logo (Builtin): KDE -&gt; KDE Neon
  * Doc: update changelog [ci skip]
  * OS (Linux): combine all armbian variants (#1547)
  * CPU (Linux): loosely detect cpu name of unknown platform
  * CPU (Linux): add cpu name detection for s390x
  * Display: capitalize `{type}`'s output (#1543)
  * Logo (Builtin): split `ID_LIKE` before using
  * CPU (Linux): support physical core count and package count detection on loongarch
  * Logo (Builtin): update some distro names
  * Logo (Builtin): simplify RebornOS
  * Logo (Builtin): fix color of Haiku in light mode
  * Shell (OpenBSD): trim `-` for login shells
  * CPU (Linux): detect for `model name` on unknown platform
  * Doc: update license
  * CMake (Haiku): fix build
  * Processing (Unix): better `pipe2(2)` existance check
  * Camera (macOS): make fastfetch compiled on newer macOS versions runs on older ones
  * GPU (macOS): use `recommendedMaxWorkingSetSize` as total GPU mem size
  * GPU (Nvidia): fall back to `nvmlDeviceGetMemoryInfo` if `nvmlDeviceGetMemoryInfo_v2` isn't supported
  * Temps (macOS): support M4x
  * Packaging: update debian stuff [ci skip]
  * Logo (Builtin): remove left padding of filotimo
  * Logo (Builtin): add filotimo logo (#1535)
  * Logo (Builtin): add Nexa Linux logo (#1539)
  * Chore: use `ffStrEquals` instead of `strcmp`
  * CMake (Haiku): fix an invalid file name
  * Chore: fix typo
  * Haiku: minimal implementation (#1538)
  * Logo (Builtin): change arch_old logo colours to be more accurate to the actual original logo.
  * Disk (BSD): silence compiler warnings
  * CMake (OpenBSD): remove pulseaudio detection
  * Sound (NetBSD): use kernel APIs instead of the OSS wrapper
  * CPU (Linux): fix build on PPC
  * Sound (OpenBSD): Use sndio instead of pulseaudio
  * CPU (Linux): rework cpuinfo parsing
  * Sound (NetBSD): don't assume readlink reports file name only
  * Sound (NetBSD): use OSS instead of pulseaudio
  * Sound (FreeBSD): report OSS ABI version</changelog>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1740052800">- Update to version 2.37.0:
  * Doc: fix typo in changelog [ci skip]
  * Release: v2.37.0
  * OS (Haiku): calcuate OS version
  * Version: report more CPU arches
  * OS (Haiku): report pre version as `-`
  * CPU (NetBSD): support non-intel CPUs
  * CMake (Haiku): enable more optional dependencies
  * OS (Haiku): detect OS beta version
  * Processing (Haiku): fix exe detection
  * GPU (Haiku): silence warnings
  * Haiku: fix building
  * Doc: update changelog [ci skip]
  * Packages (Haiku): rename package manager name to `hpkg`
  * PhysicalDisk (Haiku): fix drive size calcuation
  * Disk (Haiku): report all partitions
  * Shell (Haiku): fix arg0 detection
  * IO (Haiku): access `/path/to/file/` doesn't work. Work around it
  * LocalIP: fix `--localip-default-route-only false not working with --gen-config`
  * Bios (Haiku): report BIOS type
  * Terminal (Haiku): detect terminal version
  * PhysicalDisk (Haiku): fix SCSI drive detection
  * OpenGL (Haiku): report platform API
  * Smbios: add comments about UEFI systems [ci skip]
  * OpenGL (Haiku): add support
  * Chore: remove unused `#include`s
  * GPU: add missing variable inits
  * Bluetooth (Haiku): suppress debug output of system API
  * PhysicalDisk (Haiku): report drive type
  * Presets: print keyboard &amp; mouse in all.jsonc
  * Bluetooth (Haiku): WIP
  * Gamepad (Haiku): enable
  * PhysicalDisk (Haiku): add support
  * CPUUsage (Haiku): add support
  * Gamepad (Haiku): add support
  * Disk (Haiku): code cleanup; honor `option-&gt;folders`
  * Mouse / Keyboard (Haiku): code cleanup; ignore disabled devices
  * NetIO (Haiku): code cleanup
  * NetIO (Haiku): add support
  * Keyboard (Haiku): add support
  * Mouse (Haiku): add support
  * Sound (Haiku): fix runtime error getting mute status
  * Smbios: don't try to scan memory multiple times
  * Revert "Host (Haiku): add debug log"
  * Smbios (NetBSD): add support
  * Sound (Haiku): Init variables unconditionally; fix mute handling
  * InitSystem (Haiku): add support
  * Sound (Haiku): add support
  * Haiku: 32bit fixes
  * Host (Haiku): add debug log
  * Terminal (Haiku): fix konsole version detection
  * Chore (Haiku): silence compiler warnings
  * Smbios (Haiku): add support; enable related modules
  * StringUtils: fix a possible segfault
  * PhysicalMemory: fix `--format json` printing
  * Sound: properly round percent values
  * Weather: honor `display.temp.unit`
  * Battery (Haiku): fix capacity calculation
  * CI: enable `-DENABLE_EMBEDDED_AMDGPUIDS=On`
  * Battery (Haiku): add support (untested)
  * Battery (Haiku): add stub file
  * Logo (Builtin): simplify haiku; add haiku2 from neofetch
  * Uptime (Haiku): silence compiler warnings
  * InitSystem (Haiku): enable support
  * Processing (Haiku): support exe path detection
  * GPU (Haiku): use system API to fetch PCI devices
  * GPU: support embedding amdgpu.ids into fastfetch
  * GPU (Haiku): change the path of pci.ids to hwdata
  * TerminalFont (Haiku): support Haiku Terminal
  * Terminal (Haiku): add pretty name for Haiku Terminal
  * GPU (Haiku): add pci.ids file path
  * Doc: update README.md (#1557) [ci skip]
  * Scripts: download pci.ids by cmake; remove `python-requests` dependency
  * Logo (Builtin): update Rosa linux logo (#1559)
  * OS: remove option `--escape-bedrock`
  * Media (Haiku): enable support
  * Terminal (Haiku): add basic support
  * Display (Haiku): code cleanup; detect manufacture date
  * OS (Haiku): silence warnings
  * Media (Haiku): enable support
  * Sound (Haiku): add stub file
  * Disk (Haiku): add support
  * CPU (Haiku): add support
  * CMake (Haiku): add more optional dependencies
  * Display (Haiku): trim monitor name
  * GPU (Haiku): add support
  * GPU (macOS): fix build error in MacOS 10.13 (#1556)
  * Packaging: update debian stuff [ci skip]</changelog>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1741435200">- Update to version 2.38.0:
  * CI: try fixing CI failures
  * Release: v2.38.0
  * Chore: update image logo
  * Camera (macOS): silence compiler warnings
  * Camera (macOS): fix crashing on old macOS version
  * CI (macOS): remove CodeQL
  * Logo (Builtin): Add Shebang Linux (#1592)
  * Doc: update supported platforms
  * Logo (Builtin): update fastfetch logo to match the svg one
  * Chore (Windows): set exe file icon to fastfetch logo
  * Logo: add fastfetch logo
  * Doc: fix `SI` size prefix description
  * Doc: update changelog [ci skip]
  * Camera (macOS): try fixing segfault in macOS 10.15
  * Brightness: detect &amp; print screen type
  * Terminal (Linux): support termite version detection
  * TerminalFont (Linux): support termite terminal (#1588)
  * JsonSchema: update format json [ci skip]
  * Packages (Linux): Add support for Pisi Linux (#1580)
  * GPU: support percentage num &amp; bar in custom format
  * Logo (Builtin): simplify
  * Logo (Builtin): Added Bedrock Linux small ASCII logo (#1582)
  * Bootmgr (Linux): fix secure boot testing
  * Logo (Builtin): simplify os names
  * OS (Linux): fix VanillaOS detection
  * Builtin (Logo): simplify linuxmint handling
  * Logo (Builtin): add opensuse-tumbleweed_small
  * Disk: add `{mountpoint}` and `{mount-from}` in custom output format
  * Presets: fix OS key in examples/25
  * DateTime (Windows): fix day-pretty output in custom format
  * Presets: add a new example
  * OS: allow customize key format with kernel name and distro name
  * Battery: add missing `{icon}` in key format
  * Chassis (macOS): add support
  * JsonSchema: update format schema
  * Battery (Haiku): handle empty slots
  * Packaging: update debian stuff [ci skip]</changelog>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1742558400">- Update to version 2.39.1:
  * Release: v2.39.1
  * Networking: request HTTP/1.0, as we don't support chunked response
  * Packaging: update debian stuff [ci skip]
  * Packages (Linux): add pkgsrc detection
  * Logo (Builtin): add NetBSD2
  * Display (Linux): fix the error check for ffReadFileData (#1622)
  * Release: v2.39.0
  * Networking (FreeBSD): support fast path without TFO enabled
  * Networking: don't enable TFO if server doesn't support it
  * Networking: don't enable HTTP compression if server doesn't support it
  * Networking (Linux): remove unnecessary variables
  * Networking (Linux): don't generate SIGPIPE
  * Networking (Windows): more verbose log
  * Networking (macOS): support TFO
  * Networking (BSD): support TCP_FASTOPEN
  * Completion (Bash): Use `fastfetch --help-raw` for auto-completion
  * Networking (Windows): print readable error message
  * Networking (Windows): fix libz loading; use TCP_FASTOPEN if available
  * Networking: silence compiler warnings
  * Networking (Linux): handle a case when `sendto()` reports `EINPROGRESS`
  * Networking: move files to a sub folder
  * Networking (Windows): apply the same optimizations of *nix's
  * Netif (Windows): use `GetIpForwardTable2` to support IPv6
  * Networking (Linux): improve performance by TFO and response compression
  * Netif (DragonFly): use code of OpenBSD
  * NetIF (OpenBSD): fix default route detection
  * Doc: update changelog [ci skip]
  * Wifi (macOS): remove usage of Apple80211
  * Completions (Bash): remove `--lib-*`
  * OpenGL: drop OSMesa backend
  * Logo (Builtin): add Bredos
  * Logo (Builtin): Change FoxOS to WolfOS (#1534)
  * Terminal (Windows): detect warp version
  * Wifi (macOS): improve performance of SSID detection on Sequoia
  * Packaging: update debian stuff [ci skip]
  * Kmod (NetBSD): add `__attribute__((__packed__))` to ensure memory layout
  * CI: remove unnecessary deps
  * Logo (Builtin): Add Common Torizon OS as a variant
  * Display (Windows): prefer `DISPLAYCONFIG_DEVICE_INFO_GET_ADVANCED_COLOR_INFO_2`
  * Kmod (NetBSD): add support</changelog>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1743681600">- Update to version 2.40.0:
  * WM (Linux): fix https://github.com/fastfetch-cli/fastfetch/issues/1657#issuecomment-2772749780
  * WM (Linux): query Hyprland version from hyprland dev header
  * Binary: add comments
  * WM (Linux): correctly fall back to calling `wm --version` if `ffBinaryExtractStrings` fails
  * CI: remove Dragonfly BSD
  * WM (Linux): fix (?) Hyprland version detection
  * Release: v2.40.0
  * Uptime: round seconds to the nearest minute
  * DisplayServer (Linux): silence compiler errors
  * Util (Windows): fix mem leaks
  * Util (Windows): fix possible errors in `Unicode.c`
  * Util (Linux): fix executable file check
  * FFlist: use `uint8_t` instead of `char` to store raw data
  * Threading: fix timeout calcuation
  * Netif (Linux): support default route detection for ipv6
  * Wifi: fix code smells
  * PhysicalMemory (Linux): code refactor
  * Users (Linux): support IPv6 client addr
  * Users (Windows): support IPv6 client IP
  * Uptime (NetBSD): fix boot time calcuation
  * TPM (macOS): add support
  * InitSystem (Haiku): set pid=0 if fails to detect init pid
  * Doc: update changelog [ci skip]
  * Revert "CI: build in debug mode"
  * Swap (Windows): support multiple paging files
  * Swap (OpenBSD): fix mem leaks
  * Swap: fix code smells
  * Sound: fix typo and mem leaks
  * Doc: update changelog [ci skip]
  * Chore (Windows): silense compiler warnings
  * fastfetch: load config from fastfetch binary path
  * Logo (Ascii): Change Nexa Linux logo (#1653)
  * Logo (Builtin): change name of  Xray-OS
  * Terminal (Windows): fix file version detection
  * CI: build in debug mode
  * GPU (Windows): fix max frequency detection for AMD ODN
  * GPU (Windows): use ODN as OD7; fix `ADL2_Overdrive8_Current_Setting_Get` call and some other bugs
  * Doc: update changelog [ci skip]
  * TerminalFont (Windows): support Warp Terminal
  * GPU (Windows): try more OD funcs; add more verbose logs
  * Disk (macOS): silense compiler warnings
  * DNS (macOS): detect DNS entries by SystemConfiguration
  * DNS (Linux): add systemd-resolved support; add verbose logs
  * Media: fix code smells
  * Gamepad / Keyboard / Mouse (FreeBSD): break detection earlier
  * Keyboard (FreeBSD): fall back to KDGKBINFO if usbhid fails
  * Gamepad / Mouse / Keyboard (FreeBSD): fix memleaks
  * Host (Windows): fix build on WoA
  * GPU (Windows): actually use correct OD fns for recent AMD GPUs
  * GPU (Windows): add `OverdriveN` functions for AMD
  * GPU (Windows): fix `ADL2_Adapter_AdapterInfoX3_Get` result test
  * GPU (Windows): added verbose logs
  * Global: fix code smells
  * Host (macOS): add new models; fix an invalid model ID
  * Chore: fix code smell
  * Disk (SunOS): remove creation time detection support
  * Util/debug: add missing `#pragma once`
  * Separator: fix `outputColor` doesn't work when `length` is set
  * Chore: fix a lot code smell
  * LocalIP: change `{name}` to `{ifname}` in `--localip-key-format` for consistancy
  * GPU: fix code smell
  * GPU (General): fix GPU device type detection
  * Battery (NetBSD): report remaining time
  * Battery (Linux): fix critical state detection
  * Battery (macOS): fix manufacture date detection
  * GPU (macOS): fix code smell
  * CPU (Linux): fix CPU detection on some PPC platforms (#1640)
  * GPU (Windows): fix code smells
  * GPU: update JSON result structure; fix segfault and memleaks
  * GPU (Windows): support VMEM type detection via nvapi
  * GPU (Windows): rewrite implementation for AMD GPUs using ADL SDK
  * GPU (Windows): support memory type detection for Intel dGPUs
  * GPU: prepare for memory type &amp; shared memory usage detection
  * GPU (Windows): add display-library for future use
  * IO: don't suppress IO in debug mode
  * Bootmgr: report boot order
  * Smbios (OpenBSD): add comments for UEFI systems [ci skip]
  * Logo (Builtin): fix opensuse-tumbleweed_small
  * Wifi (Linux): add verbose logs
  * Wifi (DragonFly): fix building
  * Bootmgr (BSD): add support for OpenBSD and NetBSD
  * BIOS (OpenBSD): check bios type
  * Smbios: add verbose debug logs
  * Smbios (OpenBSD): add support for legency BIOS
  * util/debug: add missing headers
  * Wifi (FreeBSD): use ioctl to improve performance
  * Logo (Builtin): Change WiiLinuxNgx to more generic name (#1633)
  * Packaging: update debian stuff [ci skip]
  * Terminal (macOS): fix Warp Terminal pid detection
  * Presets: update examples/{24,26} [ci skip]</changelog>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1744372800">- Update to version 2.40.4:
  * Release: v2.40.4
  * Fastfetch: fix loading presets in `{exePath}/presets`
  * WM (Linux): remove `v` from Hyprland version
  * Logo (Image): mark kitty image protocol support for warp terminal on macOS
  * Release: v2.40.3
  * Fastfetch: fix loading example configs from presets directory
  * Release: v2.40.2
  * Doc: fix CI errors (2)
  * Doc: fix CI errors
  * Doc: migrate some help texts to Github Wiki pages
  * Doc: update documents
  * Doc: update README
  * Fastfetch: enforce `.jsonc` extension when loading config file
  * Logo (Image): default to kitty protocol in warp terminal
  * Release: v2.40.1
  * Logo: don't try to find files named `-`
  * IO: remove fast path of `ffPathExists`, which causes too many problems
  * TPM (macOS): fix compiling error on old system
  * Packaging: update debian stuff [ci skip]</changelog>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1749729600">- Update to version 2.45.0:
  * Release: v2.45.0
  * Swap (Haiku): detect detailed info
  * Chore (Haiku): don't use hard-coded page size
  * Disk (BSD): silence compiler warnings
  * Swap (DragonFly): add support
  * Swap (SunOS): detect detailed info
  * Swap (OpenBSD): detect detailed info
  * Swap (Linux): add fallback for Android
  * Swap (Linux): support detailed info
  * Swap (FreeBSD): detect detailed info
  * Swap (macOS): detect detailed info
  * Swap: support separated output
  * Swap (Windows): detect detailed info
  * Smbios (DragonFly): acquire SMBIOS info from `/dev/mem`
  * DE (DragonFly): fix build
  * Swap (Linux): use `/proc/swaps`
  * CI (Linux): fix musl build
  * CI (Linux): add missing deps for musl
  * Logo (Builtin): Update logo for Xenia Linux (#1783)
  * Disk (BSD): don't ignore sshfs
  * Packages (Linux): fix dnf package count detection (v2)
  * Packages (Linux): fix dnf package count detection
  * CI: add back disabled DFBSD
  * CMake: fix build of FreeBSD
  * Disk (Linux): don't ignore sshfs
  * CI (Haiku): add build
  * CMake: build FreeBSD `pkg` package
  * Logo: support `"type": "command-raw"`
  * Chore: tidy
  * Fix typo, 15,2 isn't a real mac model number
  * DE (FreeBSD): support KDE version detection
  * Logo (Builtin): add void2
  * Logo (Builtin): update default colors of voidlinux
  * Logo (Builtin): add rhel_small
  * WM: support I3 version detection
  * WM: support FVWM version detection
  * WM: support CTWM version detection
  * Logo (Builtin): add Starry Linux
  * Chore: code cleanup
  * GPU: add more GPU vendors
  * JsonSchema: update `&lt;module&gt;Format` [ci skip]
  * Packages: split code
  * Packaging: update debian stuff [ci skip]
  * Host (Android): add detection for OnePlus market name
  * Release: v2.44.0
  * DisplayServer (Linux): fix errors on KDE beta
  * Disk: add `--disk-hide-fs`
  * Disk: rename `hiddenFolder` to `hideFolder`; add docs
  * Disk: add `hiddenFolders` (2)
  * Logo (Builtin): Add UBLinux Logo (#1764)
  * Disk: add option `--disk-hidden-folders`
  * Disk (Linux): don't hard code hidden mount points
  * TerminalShell (Linux): ignore `script`
  * Logo (Builtin): Add Kylin Logo (Remove ANSI codes) (#1760)
  * Stat: use `ESC 7/8` instead of `CSI s/u`
  * Doc: Add information of where to find example config files (#1759) [ci skip]
  * fish complete: add `--logo-color-[1-9]` completion (#1754)
  * Packaging: update debian stuff [ci skip]
  * CI: silence spell check errors
  * GPU (Linux): embed asahi_drm.h
  * 3rdparty (yyjson): upgrade to 0.11.1
  * PhysicalDisk: trim white spaces of serial
  * Doc: update changelog
  * Media (Windows): detect player name (UMP apps only)
  * Doc: update changelog
  * GPU (AMD): remove usage of `ADL2_Adapter_VRAMUsage_Get`
  * Release: v2.43.0
  * Revert "Vulkan: use `VK_API_VERSION_*` instead of deprecated `VK_VERSION_*`"
  * Sound (macOS): report the volume of muted device as 0%
  * Sound: don't show 255 in custom format
  * Vulkan: use `VK_API_VERSION_*` instead of deprecated `VK_VERSION_*`
  * GPU (Linux): fix CI errors
  * GPU (Linux): detect core usage when libamdgpu is not available
  * GPU (Linux): detect VRAM type of AMD GPUs
  * Smbios: fix transitive include for `loff_t` (#1746)
  * GPU (AMD): seems `ADL2_Adapter_VRAMUsage_Get` reports system mem usage only, not full memory usage
  * GPU (AMD): more verbose logs
  * GPU: don't hide unknown type of GPUs by default
  * Smbios: discard usless values
  * Media (Linux): fix duplicated playback status
  * GPU (Windows): fix incorrect used shared memory size
  * Memory / Swap: always initialize local variables
  * GPU: optionally hide unknown GPUs (#1742)
  * Logo (Builtin): add Hydra Framework logo (#1740)
  * Builtin (Logo): new AthenaOS logo
  * Logo (Builtin): `sd '\$\{c(\d)\}' '$$$1' *`
  * TerminalShell: use ffBinaryExtractStrings result as possible (#1739)
  * DisplayServer (Linux): fix xcb_connect error handling (#1735)
  * 3rdparty: upgrade yyjson to 0.11.0
  * Media (macOS): support macOS 15.4
  * GPU (Linux): fix asahi linux support again
  * Disk (Linux): fix possible bug on 32-bit platforms
  * CPU (FreeBSD): simplify physical core count detection
  * CPU (SunOS): support physical core count and package count detection
  * Display: use height to calculate scale factor
  * CPU (Windows): always use `XxxW`
  * Global: Improve `ARRAY_SIZE` macro using `__is_array`
  * Parsing: silence compiler warnings
  * Packaging: update debian stuff [ci skip]
  * Wifi (NetBSD): fix the ambiguous comment
  * Wifi (BSD): correctly prioritize Wi-Fi protocol detection
  * Release: v2.42.0
  * BIOS: normalize the module name
  * Uptime: fix non-normalized time being shown
  * Global: use ARRAY_SIZE (#1718)
  * Bluetooth (Linux): silence an unused variable warning (#1717)
  * Platform: fix a memory leak (#1716)
  * Doc: update changelog [ci skip]
  * Logo (Chafa): fix setting `chafa.symbols`
  * Camera (OpenBSD): add support
  * CPU (OpenBSD): fix CPU temperature detection
  * Refactor: inline printError into ffPrintError and remove unused static helper
  * Wifi (FreeBSD): fix possible mem leaks
  * Wifi (NetBSD): add support
  * Wifi (OpenBSD): fix file name
  * CPU (NetBSD): add one more method to detect CPU frequency
  * CPU (SunOS): detect CPU temp
  * Logo (Builtin): Add Codex Linux support (#1701)
  * Logo (Builtin): remove GoralixOS
  * Logo (Builtin): add Aurora
  * PhysicalDisk (Linux): don't detect disk type of virtual disks
  * T2/SDE: upstreaming downstream's logo change (#1695)
  * Color: support #RGB and #RRGGBB
  * Packaging: update debian stuff [ci skip]
  * Processing (Windows): fix macro name `__aarch64__`
  * Chore: remove Chinese comments [ci skip]
  * CI (Linux): enable chafa on Linux aarch64
  * CI (Linux): bump GH runner for linux-amd64
  * Release: v2.41.0
  * Bluetooth (NetBSD): add base implementation
  * Doc: add installation instructions for pkgsrc [ci skip]
  * Uptime (Windows): use `QueryUnbiasedInterruptTime`
  * CMake: use mincore on WoA
  * Processing (Windows): use `GetOverlappedResultEx` on WoA
  * CI (Windows): add WoA
  * GPU (Linux): add temp detection for Intel GPU
  * NetIO (Linux): use `openat`
  * Logo (Builtin): Add 2 more Alpine logos (#1687)
  * CPU (Linux): fix build
  * Chore: simplify `fastfetch.h`
  * Wifi (FreeBSD): remove unused sys headers
  * CPU (Linux): add new ARM part numbers
  * Wifi (OpenBSD): add support
  * Doc: add comments about displaying image logo on Windows [ci skip]
  * WM (FreeBSD): enable Hyprland version detection
  * CPU (Windows): use PDH to detect thermal temp
  * Logo (Builtin): Add support for anduinos (#1684)
  * Platform: retrieve full user name
  * Fastfetch: fix loading presets in `{exePath}/presets`
  * IO (Windows): support `~` expanding
  * Chore: update comment
  * Util (Windows): use native win32 functions
  * WM (Linux): remove `v` from Hyprland version
  * Packages (Linux): add soar packages count (#1531)
  * PhysicalDisk (Linux): add more disk types
  * PhysicalDisk (Linux): don't detect disk type for virtual disks
  * Revert "CPU (FreeBSD): remove using of freq_levels"
  * CPU (FreeBSD): don't assume one SMT group has only two threads
  * CPU (Linux): detect physical core count on non-x86 platforms</changelog>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1751112000">- Update to version 2.46.0:
  * Doc: update changelog [ci skip]
  * Logo (Builtin): simplify kali linux
  * Logo (Builtin): add Kalpa Desktop
  * Release: v2.46.0
  * Doc: update `help.json`
  * Logo (Builtin): rename hydra framework to hydrapwk
  * Chore: code cleanups
  * Global: add missing O_CLOEXEC to open()
  * GPU (Linux): fix an issue which vram_usage is bigger t han vram_visible
  * GPU (Linux): detect shared vram usage of AMD GPU
  * GPU (Linux): correctly call radeon driver
  * GPU (FreeBSD): fix mem leaks
  * GPU (Windows): fix build
  * GPU (Linux): fix building without features
  * GPU (Linux / FreeBSD): add DRM detection support for old radeon driver
  * GPU (Linux / FreeBSD): unifies DRM related code and code clean up
  * GPU (FreeBSD): support detection by DRM [wip]
  * WM (FreeBSD): fix Hyprland version detection
  * GPU (macOS): detect Metal 4 support
  * OS (macOS): seems macOS 26 Beta 1 still reports itself as macOS 16. Honor it.
  * CI: upgrade OpenBSD version
  * CI: split amd64 and arm64 builds
  * Kmod: remove Chinese comments [ci skip]
  * Board (macOS): detect board-id if available
  * Logo (Builtin): add GhostFreak
  * Logo (Builtin): added AnushOS (#1806)
  * Global: set `SetErrorMode(SEM_FAILCRITICALERRORS)` globally
  * Logo (Builtin): Add HarmonyOS support (#1804)
  * Packages (OpenBSD): fix counting by ignoring hidden folders
  * CPU (NetBSD): properly support PowerPC (#1802)
  * WM (MacOS): Added Aerospace WM detection
  * DE (macOS): report Liquid Glass on macOS 26+
  * OS (MacOS): add macOS 26 Tahoe
  * Logo (Builtin): detect and add TrueNAS Scale
  * OS (Linux): detect Raspberry Pi OS
  * Disk (Linux): hide `/boot/firmware` by default
  * Logo (Builtin): add xenia_old; update colors of xenia
  * TerminalFont: support rio terminal emulator (#1789)
  * JsonSchema: document `swap.separate`
  * CPU (Windows): use `perflib.h` instead of `pdh.h` for querying CPU temp
  * Logo (Builtin): improve colors of bedrock_small
  * Host (Linux): detect Linux Binary Compatibility on FreeBSD
  * Host (Linux): more detailed info of WSL
  * Logo (Builtin): Add Fedora2_small (#1785)
  * Packaging: update debian stuff [ci skip]</changelog>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1752840000">- Update to version 2.48.1:
  * Release: v2.48.1
  * WM (Linux): fix a copy-paste error
  * Modules: don't report errors when `condition` key is set
  * Packages: add new option `--packages-combined`
  * JsonConfig: add `modules[n].condition` to run modules conditionally on different platforms
  * Version: replace `WIN32` with `Windows` and `Darwin` with `macOS`
  * Processing (*nix): fix compiling on Android 7
  * Processing (Windows): redirect unused std handles to `NUL` to avoid potential errors
  * Processing (*nix): use traditional `fork-exec` on Android and OpenBSD
  * Packaging: update debian stuff [ci skip]
  * WM (Linux): add Openbox version detection
  * Chore: silense compiler warnings
  * Doc: optimize README; fix typo
  * Release: v2.48.0
  * Logo: partially revert c5c0e54
  * Separator: remove `formatArgs`
  * Display: add option `--fraction-ndigits`
  * Uptime / Users: add `years`, `days-of-year` and `year-fraction`
  * Chore (Linux): silience compiler warnings
  * JsonSchema: update `xxxFormat` [ci skip]
  * Disk: add keys `years`, `days-of-year` and `years-fraction`
  * Logo (Builtin): rename ada to xray_os (#1845)
  * CMake: reconfigure after adding / removing logos
  * README: document how to run multiple modules on command line [ci skip]
  * Processing (Linux): cache the index of `$LANG`
  * README: add DeepWiki badge [ci skip]
  * GPU (Windows): fix compiling on x86-32
  * Logo: don't print builtin logo if the provided logo source cannot be found
  * Logo: load `.raw` files as raw image file
  * Logo: don't load text files as image file
  * Logo: don't parse file paths as builtin logo name
  * GPU (Windows): more method to detect device name
  * GPU (Windows): detect GPU frequency by default
  * GPU (Intel): prefer matching GPU with bus id
  * Packages (Linux): clean up nix user package detection
  * Packages (Linux): add /etc/profiles/per-user detection for nix user packages
  * GPU (Windows): ignore invalid temps
  * GPU (Windows): greatly improve performance of GPU temp detection
  * Logo (Builtin): add AxOS
  * Logo (Builtin): add the Minimal System logo (#1837)
  * Revert "GPU (macOS): update how integrated GPUs are detected"
  * CI (Haiku): Apply work-around for work directory
  * Sound (macOS): improve device id detection
  * Processing (Linux): use `posix_spawnp` for better performance
  * Chore (Linux): silence compiler warnings
  * GPU (Windows): use nvapi to detect GPU type
  * GPU (Windows): clean up
  * Chore (Windows): tidy
  * GPU (Windows): fix Win7 compatibility
  * GPU (Windows): new method to detect device type
  * GPU (Windows): add driver version fall back
  * CMake (Windows): remove `setupapi` dependency
  * Battery (Windows): use `CMAPI` instead of `SetupAPI`
  * GPU (Windows): use `CMAPI` instead of `SetupAPI`
  * Presets: add a new example
  * PhysicalDisk: unifying white space trimming
  * OS (Linux): detect fedora variants
  * Chore: Add a missing semicolon (#1828)
  * Packaging: update debian stuff [ci skip]
  * OS (Linux): remove duplicated code
  * Doc: update README [ci skip]
  * CMake: remove the unused option `ENABLE_CPUUSAGE_PERFLIB`
  * Release: v2.47.0
  * README
  * Logo (Builtin): always use `FG_DEFAULT` on title and keys
  * Logo (Builtin): fix colors of raw Linux logo
  * Logo (Builtin): fix colors of DragonFly
  * Revert "Logo (Builtin): `:%s/FG_WHITE/FG_DEFAULT/g`"
  * CPUUsage (Windows): detect perflib support dynamically based on OS version
  * OS (Linux): add support of Xubuntu
  * CPUUsage (Windows): disable `ENABLE_CPUUSAGE_PERFLIB` by default
  * CMake: fix typo
  * CPUUsage(Windows): add new method using Windows Performance Library
  * CMake (SunOS): drop pciaccess dependency
  * Chore (Windows): move `perflib_.h` to somewhere global
  * Terminal (Linux): ignore `init` and `systemd`
  * CpuUsage (Windows): refine KernelTime calculation by removing unused DPC and interrupt time
  * CpuUsage (Linux / BSD): include interrupt and softirq times in CPU usage calculations
  * IO: increase `PROC_FILE_BUFFSIZ` to avoid possible short reads
  * README: add the OpenBSD and DragonFly installation method [ci skip]
  * Media (macOS): support old macOS version
  * Media (macOS): simplify now playing handling
  * Logo (Builtin): `:%s/FG_WHITE/FG_DEFAULT/g`
  * Display (FreeBSD): silence a compiler warning
  * GPU (FreeBSD): fix compiling when libdrm is not available
  * OS (Linux): append version string for Ubuntu variants
  * GPU (OpenBSD): fix pci.ids file location
  * OS (macOS): force reporting 26 on macOS Tahoe
  * OS (Linux): improve RPIOS detection
  * OS (Linux): use `ffStrbufSetStatic` where applicatable
  * OS (Linux): clean up dietpi related code
  * OS (Linux): detect DietPi
  * CI (FreeBSD): run with 14.3
  * Sound (SunOS): rework; drop pulseaudio dependency
  * Shell (SunOS): ignore leading `-`
  * GPU (SunOS): simplify
  * PhysicalDisk (SunOS): rework; support more device types
  * PhysicalDisk (SunOS): add support
  * Logo (Builtin): use FG_DEFAULT instead of FG_WHITE
  * GPU (SunOS): rework GPU detection
  * Chore: remove useless semicolons
  * BIOS (SunOS): detect BIOS type
  * OS (macOS): remove useless code
  * Packaging: update debian stuff [ci skip]</changelog>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1754049600">- Update to version 2.49.0:
  * Battery / Uptime: update document of custom format
  * Battery: address copilot feedback
  * WM (Linux): fix a copy-paste error.
  * Release: v2.49.0
  * Doc: update readme
  * Percent: add option `--percent-width`
  * Uptime / Battery: add formatted duration string in custom format
  * Global: add new unit related options
  * DiskIO: fix wrong `/s` assignment in custom format
  * Packages (Windows): find scoop installation path by parsing scoop config file
  * Font (Linux): parse unicode escaped string stored by qt5ct
  * FFstrbuf: add function `ffStrbufAppendUtf32CodePoint`
  * GPU (Intel): read render engine temperature only
  * WM (Linux): add labwc version detection support
  * CPU (Android): make SOC detection more loose
  * CPU (Android): add more QSD SOCs
  * Disk: update default value of `hideFolders`
  * Packages (Windows): don't rely on the existance of `$SCOOP` when detecting scoop packages
  * Logo (Builtin): remove Evolinx
  * GPU (macOS): silence compiler warnings
  * Wifi (macOS): use `sudo wdutil info` on Tahoe
  * FFstrbuf: add function `ffStrbufSubstr`
  * Chore: add FF_C_NONNULL
  * Version: correct the variable name 'name' to 'project-name'
  * Users: correct the variable name 'session' to 'session-name'
  * LocalIP: cleanup printing code
  * LocalIP (Windows): fix link speed calcuation
  * LocalIP (Windows): ignore stopped interfaces
  * Netif (Windows): correct default route detection (v2)
  * JsonSchema: improve definitions of `colors` and `conditions` [ci skip]
  * CI (Haiku): remove work around
  * Editor: correct the variable name `full-path` to `path`
  * Wifi (Linux): fix interface status when the interface is up but not connected
  * Presets: improve `25.jsonc`; add verbose comments [ci skip]
  * Netif (Windows): fix default route detection when the default adapter is disabled
  * CI (NetBSD): remove opencl support to fix building
  * Packages (Linux): remove `qi` support
  * Packages (Linux): improve accuracy of flatpak count detection
  * Logo (Builtin): add Aeon
  * GPU (Linux): add GPU temp detection for nouveau driver
  * GPU (Linux): support advanced detection for nouveau driver</changelog>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1755518400">- Update to version 2.50.2:
  * Release: v2.50.2
  * LocalIP: refines default route detection and JSON output for local IPs
  * Netif (Linux): improves default route detection and error handling
  * Netif (Linux): add verbose logs
  * CI: adds default build type to CI environment
  * LocalIP (Linux): add verbose debug log
  * LocalIP (Linux): fixes incorrect return and ensures struct initialization
  * LocalIP: fix `showMac` does not honor `defaultRouteOnly`
  * FFstrbuf: wrap yyjson.h include in conditional
  * Packages (Linux): fixes Linglong detection by counting linglong layers (#1903)
  * Release: v2.50.1
  * Packages (Linux): fixes Linglong detection on Debian (#1899)
  * Percent: refactors bar color logic for clarity and consistency; update examples
  * Revert "Percent: fix a copy-paste error"
  * Packages (Android): fix building
  * Doc: update changelog [ci skip]
  * Doc: update changelog
  * Flashfetch: disable decimal digits in Disk module
  * Separator: honors FQDN settings in Title module
  * Doc: update changelog
  * Fastfetch: adds support for reading JSON config from stdin
  * Chore: removes undocumented flag `--load-config`
  * Doc: update changelog [ci skip]
  * Release: v2.50.0
  * Global: fixes `-ffast-math` compatibility
  * GPU (macOS): don't set `platformApi` to `Metal` when Metal API is not used
  * GPU (Windows): ignore software adapters; add verbose logs
  * Doc: update changelog [ci skip]
  * Cursor (macOS): improves color detection and rounding for cursor info
  * Logo (Builtin): add ObsidianOS (#1890)
  * Packages: unifies Nix package detection code
  * CI: upgrade to `actions/checkout@v5`
  * README: HomeBrew -&gt; Homebrew (#1891) [ci skip]
  * Doc: update README &amp; Changelog
  * OS (Linux): tidy
  * Revert "CPU (macOS): use CPUID for freq detection on Intel"
  * CI (Haiku): reduce errors when installing deps (hopefully)
  * CommandLine: add `--gen-config-full`
  * Presets: add an example
  * Percent: fix a copy-paste error
  * JsonSchema: remove unused properties [ci skip]
  * Doc: don't recommand Ubuntu PPA [ci skip]
  * OS (Linux): fix lliurex detection (#1882)
  * DisplayServer: merge `serverVender` into `wmProtocolName`
  * Display (Linux): show brand of Xserver in WM section (#1888)
  * Chore: remove unused functions
  * Netif (SunOS): work around a bug that fails to detect default route for IPv4
  * GPU (FreeBSD): fix gpu driver detection when DRM is used
  * CPU (macOS): use CPUID for freq detection on Intel
  * LocalIP (Linux): fix building
  * LocalIP (SunOS): add speed detection support
  * LocalIP (SunOS): support `isIPv6AddressPreferred`
  * LocalIP (SunOS): add more if flags
  * LocalIP (Linux): fix compiler warnings
  * Networking (SunOS): fix compiler warnings
  * Netif (SunOS): fix compiler warnings
  * LocalIP (BSD): fix compiling
  * Wifi: updates default WiFi percentage thresholds
  * LocalIP: improve preferred IPv6 address detection
  * Netif: unifies BSD netif handling
  * Netif (Haiku): add preferred source addr
  * NetIO (SunOS): fix build
  * LocalIP (BSD): fix building
  * Netif: refactor API for dual-stack route detection
  * Display: fix invalid `size.maxPrefix` default value in generated config file
  * Netif (BSD): split different implementations
  * LocalIP: consider preferred source address when retrieving default route (#1883)
  * LocalIP (Windows): show only preferred IP when `showAllIPs` is not set
  * Chore: fix building on Windows
  * JsonConfig: make all non-module keys case-sensitive
  * JsonConfig: write all flags when generating config file
  * Doc: remove command line flags of modules
  * Modules: refactor module option handling for static allocation
  * Modules: export module info
  * Modules: add init and destroy option callbacks to module info
  * Disk (Linux): ignore Bedrock Linux subvolumes
  * OS (Linux): don't detect Bedrock linux when ran restricted
  * JsonSchema: Improves JSON schema enums with oneOf objects containing descriptive explanations for allowed values
  * GPU: support `"hideType": null`
  * Display: add `compactMode: null`; improve json schema
  * Modules: remove all `parseCommandOptions` and related stuff
  * JsonSchema: small improvements
  * Display: allow `"compactType": null`; improve json schema
  * Disk: add missing JSON config options
  * Percent: silense compiler warnings
  * JsonConfig: refactor JSON key handling to improve safety and consistency
  * JsonConfig: refactor string buffer JSON handling for robustness
  * Doc: update changelog; fix typo
  * Presets: add new config; fix old config
  * Option: fix a possible null reference segfault
  * Doc: update changelog [ci skip]
  * Bar: refactor config to use nested objects and deprecates old fields
  * Bar: add customizable bar color options for percentage bars
  * Bar: add configurable elapsed bar borders for percent bars
  * Wifi (macOS): disable using of `ipconfig` on 15.6 too
  * Chore: remove sensitive data [ci skip]
  * Changelog: fix typo [ci skip]
  * Packaging: update debian stuff [ci skip]</changelog>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1759060800">- Update to version 2.53.0:
  * CI: fix release action
  * Packaging: updates debian stuff [ci skip]
  * Release: v2.53.0
  * CPU (Android): adds support for new Qualcomm and MediaTek SoC codes
  * Doc: update changelog [ci skip]
  * CPU (Linux): adds support for new ARM C1 series CPU part IDs
  * Zpool: increase libzfs so version to 6
  * CI: upgrades runner of intel macOS
  * CPU (Windows): refines ARMv8.4-A detection to require LSE2
  * OS (Linux): Better Ubuntu flavor detection
  * Wifi (macOS): add (B)SSID detection back for Tohoe 26.0
  * TerminalFont: improve ghostty with command `ghostty +show-config`
  * Logo (Builtin): update ObsidianOS logo (#1970)
  * Disk: refactors mountpoint matching to use shared string utilities
  * CommandOption: refactors code with `ffStrbufSeparatedContainIgnCaseS`
  * FFstrbuf: adds more functions to match separated strings
  * Gamepad / Keyboard / Mouse: improves device error handling and memory cleanup
  * Gamepad / Keyboard / Mouse: adds support to ignore input devices by name prefix
  * Logo (Builtin): adds TempleOS
  * Disk: allows array input for disk folder and filesystem options
  * CI (Windows): add chafa dependency
  * TerminalFont: Improves Ghostty font config parsing with fallback font detection
  * Revert "Logo (Builtin): add Starry Linux"
  * Disk (Linux): avoids invalid disk creation times before Linux epoch
  * Disk (Linux): replace statx(2) call to syscall(2)
  * CI: adds glibc polyfill step for compatibility
  * CI: merge more jobs
  * CI: update cmake version
  * CI: merge amd64 and aarch64 code with matrix
  * CPU (Windows): trims vendor string read from registry
  * CPU (Windows): handles zero temperature data and refactors value use
  * Wifi (macOS): removes wdutil-based Wi-Fi detection code
  * Presets: add a new example [ci skip]
  * 3rdparty: upgrade widecharwidth
  * CPU (Linux): replaces HWCAP defines with explicit bitmasks for ARM
  * CPU (Linux): add new ARM part numbers
  * LocalIP: adds IPv6 type selection for local IP display
  * Separator: uses widecharwidth for Unicode wcwidth and fixes issue that wchar_t on Windows is 2-byte length
  * Separator: rename property `length` with `times`
  * OpenGL (Windows): simplifies code by removing custom window proc
  * Packaging: update debian stuff [ci skip]
  * Doc: update changelog
  * Global: renames `fractionTrailingZeros` enum to `always/never` for consistance
  * Fastfetch: removes redundant assignment in display config parsing
  * Release: v2.52.0
  * Btrfs (Linux): refactors Btrfs allocation to use profile string
  * Btrfs (Linux): adds tracking of Btrfs data copy counts
  * Terminal: ignores WSL2 unknown process for terminal detection
  * WMTheme (Linux): supports labwc on XFCE4
  * CPU (Linux): add cpu name detection for ia64
  * Doc: update README
  * Settings: renames GNOME settings accessor for clarity
  * Wallpaper (Linux): improves XFCE wallpaper detection via property enumeration
  * Settings: removes direct XFConf support in favor of DBus backend
  * DBus: adds function `ffDBusGetInt`
  * Dbus: adds 2nd argument to ffDBusGetMethodReply
  * CI: bump dependencies
  * Doc: update changelog
  * Fastfetch: improves frequency display config validation and schema
  * Fastfetch: add option `--faction-trailing-zeros`
  * Logo (Chafa): fixes setting `logo.width` with chafa
  * JsonSchema: update
  * Fastfetch: defaults `display.fraction.ndigits` to 2
  * Fastfetch: informs users that module-specific CLI options are no longer supported
  * LocalIP (Linux): skips interfaces without IPs unless MAC display is enabled
  * JsonConfig: fixes `fractionNdigits` will be incorrectly set to `0` when specifying `null`
  * Display: rearranges default format; removes scaled resolution
  * LocalIP: honors `fractionTrailingZeros`
  * Global: adds configurable trailing zeros for double formatting
  * DisplayServer: improves display size rounding and argument clarity
  * Display (Linux): detect scale factor for X11
  * Global (Android): enable X11 related stuff
  * CMake: enable zlib on all platforms
  * DisplayServer (Android): update WM name accurately
  * CMake (Android): link to libm
  * Release: v2.51.1
  * CPU (macOS): removes reliance on unavailable ARM capability headers on macOS
  * Packaging: update debian stuff [ci skip]
  * CPU/GPU (Linux): Improves CPU/GPU temp detection accuracy on Linux/Android
  * Revert "Uptime (Windows): use `QueryUnbiasedInterruptTime`"
  * JsonSchema: update
  * DisplayServer (Linux): upgrade kde-output-device-v2
  * Release: v2.51.0
  * GPU (Android): adds GPU temp detection support
  * Fastfetch: clarify that `--debug` is debug-mode only
  * CPU (Linux): improve temp detection
  * Battery (Android): fix battery temp detection
  * DisplayServer (Android): fix display server name
  * Global: handles missing config directories more gracefully
  * InitSystem (GNU): support shepherd detection
  * CPU (Windows): detects march on WoA
  * CPU (macOS): detects march on Apple Silicon
  * CPU (Linux): detects march on aarch64
  * Processing (Linux): enhances robustness when extracting process name and related fields
  * DiskIO (Linux): trim trailing white spaces
  * Chore: silense compiler warnings
  * CPUUsage: adds user guidance when CPU time fails to increase
  * LocalIP (GNU): adds MAC addr detection support
  * InitSystem: tidy
  * CMake (GNU): disable wifi support
  * Processing (GNU): fix command name reading
  * Common (GNU): more `__GNU__` tests
  * Terminal (GNU): enable version detection
  * Processing (GNU): hurd uses `cmdline` instead of `comm`
  * WM (GNU): enable
  * Global (GNU): code cleanups
  * Chore: tidy tabs
  * CMake (GNU): enable a lot of things
  * localip: Remove AF_LINK on GNU.
  * WIP: shepherd initsystem
  * Fix localip_linux on GNU
  * disable ffPackagesGetNix on when it is not defined
  * Port netif_gnu to the new api.
  * Fork netif_linux to netif_gnu.
  * Start work on GNU
  * TerminalShell: remove special handling of hyfetch
  * Fastfetch: improves config file generation message with tips
  * Chore: silence compiler warnings
  * CPU: fix building on non-x86
  * CPU: adds CPU microarchitecture detection for x64 and reporting
  * Disk: adds formatted free and available disk size fields
  * Logo (Builtin): adds AerynOS
  * Processes (Linux): be compatible with Hurd
  * DisplayServer (Android): update WM name
  * Fastfetch: improves format help output for config and variables
  * WM (Linux): uses the same X11 props as neofetch to query WM name
  * DE (Linux): adds Trinity version detection support
  * GPU (BSD): fallbacks to `pciids/pci.ids`
  * Packaging: update debian stuff [ci skip]
  * GPU (BSD): always use `pci.ids` provided by hwdata
  * Disk: disable hyperlink by default and move it to custom keys
  * TerminalShell (Linux): always ignore pid1 (v2)
  * TerminalShell (Linux): always ignore pid1
  * Disk (Linux): remove unused headers
  * Common: corrects the position for appending milliseconds
  * LocalIP (Linux): improves netlink route parsing by avoiding possible message truncation
  * FFstrbuf: handles double rounding and zero representation in formatter
  * GPU (Windows): improves GPU detection by refining device filtering
  * Shell (Windows): be compatible with fish 4 built by MSYS2
  * Common: refactors number formatting to use type-specific append functions
  * Format: replaces format specifiers with type-safe append functions
  * FFstrbuf: improves double formatting precision handling
  * Duration: use `ffStrbufAppendUInt`
  * FFstrbuf: adds number appending functions
  * Logo (Builtin): honor `logo.width`
  * JsonConfig: support JSON5
  * Common: refactors time formatting to use a shared buffer and utility macro
  * 3rdparty: upgrade yyjson to 0.12.0
  * JsonConfig: adds 'succeeded' module condition to JSON config
  * OS: set the icon of unknown OS type as a cog
  * Modules: return bool to indicate whether the detection is succeeded
  * CI (DFBSD): enable
  * CI (SunOS): fix build
  * CPU (macOS): changes CPU to M2 Pro for Mac14,12 host (#1915)</changelog>
</package>
<package pkgid="0dc903d06ad6788de209d7616917f79f9c08141abc9dc64fc4e170a891bad1658bb0a6c6add847faac49fa8b2f7a713c6d55f46a11b08c9c6cb7cb5176abd5c9" name="fastfetch-fish-completion" arch="noarch">
  <version epoch="0" ver="2.53.0" rel="1.10"/>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1731153600">- Update to version 2.29.0:
  * CMake (OpenBSD): enable bluetooth detection
  * CMake (NetBSD): add `/usr/pkg/lib` to rpath
  * GPU: fix build if libpciaccess is not available
  * Camera (OpenBSD): add support (?)
  * OpenGL (NetBSD): use correct so file
  * Release: 2.29.0
  * OS (BSD): don't check for debian and ubuntu variants
  * OS (Linux): fix build
  * Library (Windows): load dlls at current exe path
  * Vulkan: drop windows-i686 support
  * Logo (Builtin): add Lilidog
  * OS (Linux): detect Lilidog
  * CI: remove windows-i686
  * Doc: update changelog
  * CI (DragonFly): build with chafa &amp; libelf
  * Libc (BSD): always initialize variables
  * Libc (DragonFly): add support
  * CI: build on DragonFly
  * Netif (SunOS): fix compiling
  * Sound (DragonFly): add support
  * DiskIO (DragonFly): add support
  * Doc: update changelog
  * OS (Linux): improve performance of proxmox version detection
  * Global: support DragonFly BSD
  * Brightness (NetBSD): disable
  * Doc: update changelog
  * Logo (Builtin): update OpenSUSE Leap
  * CI (NetBSD): release NetBSD
  * CI: remove libv4l
  * NetIO (*BSD): support OpenBSD &amp; NetBSD
  * Users (OpenBSD): add support
  * DiskIO (SunOS): remove dev path
  * DiskIO (OpenBSD): add support
  * DiskIO (NetBSD): add support
  * Logo (Builtin): make aperture colorable
  * CI (OpenBSD / NetBSD): embed pci.ids
  * Processes (NetBSD): add support
  * GPU: use `pciaccess` to enumerate PCI devices
  * CMake (NetBSD): set rpath
  * CPU (Android): add QS8E
  * Bios (NetBSD): try detecting boot method
  * Shell / Terminal: fix proc path detection
  * Platform (NetBSD): fix exe path detection
  * Disk (NetBSD): fix disk size detection
  * CPU (NetBSD): add support
  * Packages (NetBSD): add support
  * Keyboard (Linux): silence compiler warnings
  * CMake (*BSD): detect videodev2
  * CI (NetBSD): try fixing build
  * CI (NetBSD): add more dependencies
  * DisplayServer (Linux): silense compiler warnings
  * Global: remove stb_printf
  * Disk (OpenBSD): fix build
  * CMake (NetBSD): detect X11 and other packages
  * Disk: support NetBSD, improve hidden partition detection
  * NetBSD: support CPUUsage / Memory / Swap
  * CMake: allow to replace native *printf to stb_*printf
  * CI: fix a copy-paste error
  * Uptime (NetBSD): fix invalid result
  * CI: try adding netbsd
  * Global: make it compile on NetBSD
  * Logo (Builtin): update PikaOS (#1361)
  * Logo (Builtin): add SummitOS
  * Logo (Builtin): add XCP-ng
  * Logo (Builtin): update OpenSuse Tumbleweed
  * Global: overall optimization
  * 3rdparty: add stb_sprintf
  * Editor: fix the Vim version detection (#1356)
  * CMake: define `NOMINMAX` on Windows
  * CMake: use 64bit time_t on Linux
  * Editor: optimize editor version parsing (#1355)
  * Packaging: update debian stuff [ci skip]</changelog>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1731931200">- Update to version 2.30.1:
  * CMake: check return code of python scripts
  * Release: v2.30.1
  * CMake: fix the destination where `fastfetch_pciids.c.inc` is generated
  * CMake: Fixed the destination where fastfetch.1 is generated. (#1403)
  * Packaging: update debian stuff [ci skip]
  * Release: v2.30.0
  * Doc: remove guix package installer as it's outdated [ci skip]
  * Display: concat flags
  * GPU (Windows): fix a bad assignment
  * Terminal (Linux): support tilix version detection
  * NetIO (BSD): remove unnecessary checks
  * NetIO (BSD): add txDrops detection if supported
  * NetIO (macOS): fix 32bit trancation
  * Scripts: `gen-man.py` honors SOURCE_DATE_EPOCH. (#1400)
  * Logo (Builtin): update openSUSE Tumbleweed
  * Doc: update changelog [ci skip]
  * Percent: in custom format, only set num and bar string if enabled in percent config
  * Doc: update schema for percent type config
  * Percent: allow use enum to set type value in JSON config
  * Global: support percent type config in module level
  * Global: pack all enums and make flag enums unsigned
  * CPU (Linux): add more Apple SOC code names
  * Host (Android): detect marketing name of vivo smartphone
  * IO (macOS): fix logo fails to load from symlinked files
  * Processing (macOS): fix exe path detection
  * Util (macOS): cleanup `cf_helpers.c`
  * CMake: use `gen-man.py` to generate man file
  * Scripts: clean up `gen-man.py`
  * Scripts: make `gen-pciids.py` executable
  * Scripts: Add python script to generate man page (#1392)
  * GPU (macOS): apply the same logic as CPU just in case
  * CPU (macOS): try fixing CPU freq detection on Apple M4
  * Media (macOS): try fixing error `CFStringGetCString() failed`
  * Smbios: clean up more garbage values
  * StringUtil: rename `ffStrCopy` and correctly reflect its usage
  * Shell (macOS): try fixing segfault in old macOS
  * DisplayServer (NetBSD): detect WM / DE by process name
  * Packages (Linux): add qi support
  * Revert "IO: optimize createSubfolders (#1382)" (#1390)
  * tests: add FFstrbuf smallest allocation test &amp; minor fix (#1387)
  * Logo (Builtin): add cosmicDE logo (#1386)
  * Doc: fix typo in README (#1385) [ci skip]
  * OS (Android): display android icon
  * Logo (Builtin): add Unifi
  * CPU (OpenBSD): support CPU temp detection
  * Disk: be able to print disk indices
  * Battery: don't print index in multi-battery device
  * Sound (BSD): trim device names
  * Version (MidnightBSD): support libc version detection
  * Packages (BSD): support mport
  * Logo (Builtin): add MidnightBSD
  * FFstrbuf: fix small FFstrbuf allocations in ffStrbufEnsureFree (#1383)
  * IO: optimize createSubfolders (#1382)
  * DisplayServer: fix deprecation warnings
  * Host (macOS): add HwModel support for new Mac (2024) (#1381)
  * Bluetooth (Windows): detect battery level
  * Bluetooth (Windows): detect battery (WIP)
  * Logo (Builtin): fix Lilidog
  * FFstrbuf: correct definition of `StrStrIA`
  * Bluetooth (Windows): fix mac address detection
  * CMake: Add initial support for MidnightBSD (#1377)
  * Bluetooth (macOS): normalize mac address strings
  * Bluetooth (macOS): support battery level detection
  * Monitor: don't display `()` if display name is not available
  * Display: add `hdr-compatible`
  * Packaging: update debian stuff [ci skip]</changelog>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1733227200">- Update to version 2.31.0:
  * Display (Linux): detect bit depth when libdrm is used
  * Terminal: Support sakura version &amp; font detection
  * Release: v2.31.0
  * Processing (Linux): interrupt poll &amp; read syscalls when the child process is exited
  * Wifi (Linux): detect Wifi-7
  * Wifi (Windows): make unit of bitrates be consistant
  * Completion (Zsh): fix syntax error in completion file (#1421)
  * WM (Linux): fix wl-restart parsing (#1422)
  * Logo (Builtin): add Windows Server 2025
  * GPU (Linux): detect GPU NV type
  * CPU (Windows): code cleanup
  * CPU (Linux): support up to 128-socket boards
  * CPU: change `cpuCount` to `packages`; support custom format
  * CPU: remove duplicate whitespaces in CPU name
  * CPU (Linux): refactor; fix cpu count detection
  * Support for dual CPU systems  (#1417)
  * CI: fix building on macOS
  * Display (macOS): don't crash with NULL pointer references
  * Logo (Builtin): update MidOS
  * OS (Linux): check for lmde
  * Scripts: use datetime to get date and set timezone to UTC (#1410)
  * Display: change physical size detection to use basic display parameters
  * Users: fix invalid var name
  * Wifi (FreeBSD): support channel &amp; frequency detection
  * Wifi (Android): silence compiler warnings
  * Chore: silence some warnings
  * Wifi (Android): report more props
  * Wifi: print channel band
  * Wifi (Linux): detect frequency &amp; channel number
  * Wifi (macOS): fix build on old OS version
  * Display: report ppi to 0 if screen size is not available
  * Wifi: detect channel and frequency
  * Display: don't report screen size when display is mirrored
  * CMake: fix possible linking errors in `BINARY_LINK_TYPE=dynamic` mode
  * Display (Linux): fix preferred resolution detection for wayland
  * Display (FreeBSD): fix build
  * Display: print preferred resolution &amp; refresh rate in custom format
  * Display: add scale factor in custom format
  * Display (Android): fix build
  * Display (Windows): detect preferred resolution &amp; refresh rate
  * Display (macOS): detect maximum resolution &amp; refresh rate
  * Display (Linux): detect preferred resolution and refresh rate
  * DisplayServer (Linux): remove support of xcb &amp; xlib
  * Wifi (Linux): improve performance
  * DBus: use `general.processingTimeout` as its timeout instead hard coding
  * Media (Linux): improve performance of dbus communication
  * mtgpu: header file cleanup for forward compatibility (#1405)
  * Packaging: update debian stuff [ci skip]</changelog>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1734523200">- Update to version 2.32.1:
  * Release: v2.32.1
  * Packages (OpenBSD): fix a typo that prevents package counting from working
  * Packaging: update debian stuff
  * Release: v2.32.0
  * Revert "Display (Linux): prefer detecting physical size from EDID"
  * Wifi (FreeBSD): early break if the interface is not associated
  * WM (Linux): added ratpoison window manager (#1442)
  * Version: fix format parameter name
  * Logo (Builtin): improved debian ascii logo (#1441)
  * OpenGL (NetBSD): try fixing build
  * Display (FreeBSD): don't try to use `/sys` on FreeBSD
  * WM (FreeBSD): improve WM detection for Wayland
  * OpenGL (NetBSD): fix build
  * OpenGL (EGL): prefer surfaceless display
  * Add Armbian-unofficial detection (#1436)
  * Logo (Builtin): add Ultramarine Small
  * WM (OpenBSD): fix process enumeration
  * Display (Linux): clean up
  * WM: add support for fvwm (OpenBSD) and ctwm (NetBSD)
  * Scripts: fix typo
  * OpenGL (Linux): suppress IO
  * CPU (ARM): add more apple cores
  * CPU (Linux): detect Virtualized Apple Silicon
  * Doc: update changelog [ci skip]
  * Logo (Builtin): add Serpent OS
  * JsonSchema: fix typo
  * OS (Linux): detect Linux Lite
  * JsonSchema: add documentation of format args
  * Fastfetch: add `-h format-json`
  * Global: refactor code of `-h &lt;module&gt;-format`
  * Host: silence compiler warnings
  * Host (Sun): fix build
  * Host: detect mac model in FreeBSD &amp; Windows
  * Edid: use screen size in DTD if make sense
  * Host (Linux): report mac product name
  * Wifi (Linux): fix bssid formatting
  * Logo: randomly select one if the logo source expands to multiple files
  * GPU (OpenBSD): fix `pci.ids` file location
  * Packaging: update debian stuff [ci skip]</changelog>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1735214400">- Update to version 2.33.0:
  * Release: v2.33.0
  * Doc: update changelog [ci skip]
  * Media (Linux): set player name manually for musikcube
  * Logo (Builtin): add GoralixOS
  * Media: make it able to print player info in custom format
  * Media (Linux): report player name
  * Vulkan (Android): hard code path of `libvulkan.so`, so that users don't need to install vulkan-loader wrapper of termux
  * Media (Linux): Fix #1461 (WIP)
  * Doc: update changelog [ci skip]
  * Logo (Builtin): add NurOS
  * Doc: add comments for running fastfetch in root
  * DiskIO (OpenBSD): remove debug output
  * PhysicalMemory: clean up garbage data
  * CPU (NetBSD): fix typo
  * Battery (OpenBSD): fix build
  * Battery (NetBSD): add support
  * Bluetooth (BSD): disable
  * CPU (NetBSD): trim CPU vendor
  * Brightness (NetBSD): don't error out if the screen idx isn't 0
  * Version (NetBSD): report sysname
  * CPU (NetBSD): support temp and frequency detection
  * SMBIOS (NetBSD): add more data
  * Battary (NetBSD): some basic investigation of acpi battery detection
  * Battery (OpenBSD): add support
  * Brightness (OpenBSD): add support
  * Brightness (NetBSD): add support for builtin display
  * Bluetooth (Windows): silence compiler warnings
  * CMake: Add a cmake option to make flashfetch target optional (#1455)
  * PhysicalDisk (Linux): fix interconnect type detection
  * Bluetooth (Linux): improve performance
  * TerminalShell (Android): ignore proot
  * Bluetooth (Windows): optimise
  * Bluetooth (macOS): don't report disconnected devices if `showDisconnected == false`
  * Bluetooth (Linux): improve performance when `showDisconnected == false`
  * BluetoothRadio (Linux): improve performance by reducing size of dbus response
  * FFlist: fix return value of `ffListPop`
  * OS (Linux): Refactor Armbian version detection and add support for ubuntu-based armbian detection (#1447)
  * Shell (Windows): use $POWERSHELL_VERSION if available</changelog>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1736596800">- Update to version 2.34.0:
  * Media (Linux): remove unused variables
  * Doc: update JSON schema [ci skip]
  * Processing (Windows): fix get current process
  * OpenGL (EGL): try GLES 2.0+; then fallback to 1.1 if failed
  * Release: v2.34.0
  * OpenGL (Android): enable support
  * OpenGL (Android): request GLES 2+
  * Battery (NetBSD): fix battery percentage detection
  * Packages (Linux): rename am-user to appman
  * Packages (Linux): remove possible final newlines in am config
  * General: don't suppress the output of `preRun`
  * Packages (Linux): support am-user
  * WMDE: detect Sway by env variables
  * CPU (Android): check for MTK D9X00 SOCs
  * feat: Add Rhino Linux ASCII (#1487)
  * CMake (Android): set rpath for system Android libs
  * Sound: detect platform API
  * Processing (Windows): early return if `OpenProcess` failed
  * Logo (Builtin): add snigdhaos ascii (#1485)
  * fixing fastfetch wrong colors for xray_os logo (#1486)
  * Doc: update changelog [ci skip]
  * CI (Linux): add Linux ppc64le platform (#1484)
  * CPU (Linux): fix var content was unexpectedly modified
  * OS: prefer pretty names
  * CPU: fix core count output in multi-package platforms
  * CPU (Linux): detect TZ temp if CPU temp is not available
  * Packages (macOS): remove redundant tokens
  * Logo (Builtin): add the Lubuntu logo (#1481)
  * Doc: update README [ci skip]
  * FFstrbuf: improve performance of copying static strings
  * Terminal (Linux): fix detection of `pk-command-not-found`
  * TerminalShell (Linux): relax detection of terminals in NixOS
  * Doc: update README.md
  * Logo (Image): mark ghostty supports kitty image protocol
  * TerminalSize (Linux): enable fast path when stdout is redirected.
  * WM (Linux): detect WM version
  * WM (Linux): add sway version detection
  * Terminal (macOS): improve performance of kitty version
  * WM (Windows): detect version of DWM
  * WM (Linux): don't crash if no wm is detected
  * WM (macOS): add WindowServer version detection
  * WM: report version field in custom and JSON output
  * WM: Add support for detecting window manager versions, add support for Hyprland version (#1472)
  * Logo (Image): add `--kitty-icat`; honor `--logo-height` if set
  * Logo (Image): support generate image data via `kitten icat`
  * Revert "GPU: support detection by EGLext"
  * Brightness (FreeBSD): fix backlight name detection
  * TerminalFont (macOS): fix ghostty font detection; default to `JetBrains Mono`
  * Platform (Linux): fix exe path detection (#1468)
  * Bluetooth (DragonFly): disable module to fix build
  * GPU (EGLext): fix build on old systems
  * TerminalFont: support Ghostty
  * GPU: rename `ffGetGPUVendorString` to `ffGPUGetVendorString`
  * GPU: support detection by EGLext
  * Bluetooth (FreeBSD): add support (not tested)
  * CI: update *BSD versions
  * Host (macOS): fix thunderbolt version of new MBPs
  * Packaging: update debian stuff [ci skip]</changelog>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1736769600">- Update to version 2.34.1:
  * Sound: fix a memleak
  * Chore: fix spelling
  * CPU (BSD): improve base freq detection
  * Release: v2.34.1
  * fix(logo): Rename *_LOGO_SMARTOS to *_LOGO_SNIGDHAOS (#1502)
  * Logo (Builtin): add Oreon
  * Logo (Builtin): add HeliumOS
  * Memory (NetBSD): change formula to be consistant with other systems
  * Memory (OpenBSD): update formula to be consistant with other systems
  * Logo (Builtin): add netbsd_small
  * CI: fix build
  * DisplayServer (Linux): upgrade wayland protocol `kde-output-device-v2`
  * DisplayServer (Linux): check HDR support with `xx_color_manager_v4_interface` (WIP)
  * Media (Linux): use file name as media name if song title is not available
  * CPU (FreeBSD): bind process to the first 2 cores
  * chore: remove unnecessary NULL checks
  * TerminalFont (macOS): fix Ghostty termfont detection
  * GPU: set GPU vendor string when using OpenGL backend
  * Packaging: update debian stuff [ci skip]</changelog>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1737892800">- Update to version 2.35.0:
  * Thread: optimise locking (unused though)
  * CPU (Linux): add comments
  * Release: v2.35.0
  * PhysicalDisk: change temp range to 50-70 °C
  * Doc: update changelog again [ci skip]
  * Doc: update changelog [ci skip]
  * Doc: update json_schema [ci skip]
  * Doc: update changelog [ci skip]
  * Disk / Users: support duration printing in custom format
  * Doc: update changelog
  * CPU (Android): add QS8E for Galaxy
  * CMake: add option `-DCUSTOM_LSB_RELEASE_PATH`
  * OS (Linux): acquire more os info from lsb-release if missing from os-release
  * Logo (Builtin): fix more escape problems
  * Logo (Builtin): fix OpenBSD &amp; OpenBSD_small
  * Logo (Builtin): Add KDE Linux logo (#1523)
  * CPU (Android): detect new QS8E
  * CPU (Linux): detect SOC name on RISCV
  * Doc: update changelog [ci skip]
  * Presets: fix percentage number printing in examples/20 [ci skip]
  * Disk (NetBSD): silence compiler warnings
  * Doc: update feature_request issue template
  * Display (Linux): return reason if errored
  * Packages: fix file type check
  * Packages (SunOS): fix building
  * Packages: add pkgsrc; code refactor
  * Doc: update issue templates [ci skip]
  * CI: add linux-armv6
  * OpenGL: suppress output of EGL again
  * Doc: update more issue templates [ci skip]
  * Doc: split bug report issue template into smaller parts [ci skip]
  * CPU (Linux): query SOC name in cpuinfo for aarch64
  * TerminalShell (Linux): ignore proot
  * Logo (Builtin): update netbsd small
  * Logo (Builtin): add Arch Old
  * Chore: forbid using of VLAs
  * Packaging: update debian stuff [ci skip]</changelog>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1739448000">- Update to version 2.36.1:
  * Release: v2.36.1
  * CI: fix typo
  * CMake (Haiku): set `_GNU_SOURCE`
  * Logo (Builtin): fix Chimera Linux distro name to match ID (#1554)
  * Logo (Builtin): correct shape of ALT Linux (#1553)
  * CI: build with chafa &amp; ddcutil (aarch64)
  * CI: update artifact names of armv6l and armv7l
  * Doc: update readme
  * CI (Linux): use native aarch64 runner
  * CI (NetBSD): update OS version to 10.1
  * Packaging: update debian stuff [ci skip]
  * CI: add linux-s390x
  * CPU: remove useless `w/ Radeon 780M Graphics`
  * Terminal (Linux): improve performance of Tilix version detection
  * Release: v2.36.0
  * OpenGL (Haiku): enable support
  * Format: support syntax of `{$ENV_VAR}` in custom format
  * Logo (Builtin): KDE -&gt; KDE Neon
  * Doc: update changelog [ci skip]
  * OS (Linux): combine all armbian variants (#1547)
  * CPU (Linux): loosely detect cpu name of unknown platform
  * CPU (Linux): add cpu name detection for s390x
  * Display: capitalize `{type}`'s output (#1543)
  * Logo (Builtin): split `ID_LIKE` before using
  * CPU (Linux): support physical core count and package count detection on loongarch
  * Logo (Builtin): update some distro names
  * Logo (Builtin): simplify RebornOS
  * Logo (Builtin): fix color of Haiku in light mode
  * Shell (OpenBSD): trim `-` for login shells
  * CPU (Linux): detect for `model name` on unknown platform
  * Doc: update license
  * CMake (Haiku): fix build
  * Processing (Unix): better `pipe2(2)` existance check
  * Camera (macOS): make fastfetch compiled on newer macOS versions runs on older ones
  * GPU (macOS): use `recommendedMaxWorkingSetSize` as total GPU mem size
  * GPU (Nvidia): fall back to `nvmlDeviceGetMemoryInfo` if `nvmlDeviceGetMemoryInfo_v2` isn't supported
  * Temps (macOS): support M4x
  * Packaging: update debian stuff [ci skip]
  * Logo (Builtin): remove left padding of filotimo
  * Logo (Builtin): add filotimo logo (#1535)
  * Logo (Builtin): add Nexa Linux logo (#1539)
  * Chore: use `ffStrEquals` instead of `strcmp`
  * CMake (Haiku): fix an invalid file name
  * Chore: fix typo
  * Haiku: minimal implementation (#1538)
  * Logo (Builtin): change arch_old logo colours to be more accurate to the actual original logo.
  * Disk (BSD): silence compiler warnings
  * CMake (OpenBSD): remove pulseaudio detection
  * Sound (NetBSD): use kernel APIs instead of the OSS wrapper
  * CPU (Linux): fix build on PPC
  * Sound (OpenBSD): Use sndio instead of pulseaudio
  * CPU (Linux): rework cpuinfo parsing
  * Sound (NetBSD): don't assume readlink reports file name only
  * Sound (NetBSD): use OSS instead of pulseaudio
  * Sound (FreeBSD): report OSS ABI version</changelog>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1740052800">- Update to version 2.37.0:
  * Doc: fix typo in changelog [ci skip]
  * Release: v2.37.0
  * OS (Haiku): calcuate OS version
  * Version: report more CPU arches
  * OS (Haiku): report pre version as `-`
  * CPU (NetBSD): support non-intel CPUs
  * CMake (Haiku): enable more optional dependencies
  * OS (Haiku): detect OS beta version
  * Processing (Haiku): fix exe detection
  * GPU (Haiku): silence warnings
  * Haiku: fix building
  * Doc: update changelog [ci skip]
  * Packages (Haiku): rename package manager name to `hpkg`
  * PhysicalDisk (Haiku): fix drive size calcuation
  * Disk (Haiku): report all partitions
  * Shell (Haiku): fix arg0 detection
  * IO (Haiku): access `/path/to/file/` doesn't work. Work around it
  * LocalIP: fix `--localip-default-route-only false not working with --gen-config`
  * Bios (Haiku): report BIOS type
  * Terminal (Haiku): detect terminal version
  * PhysicalDisk (Haiku): fix SCSI drive detection
  * OpenGL (Haiku): report platform API
  * Smbios: add comments about UEFI systems [ci skip]
  * OpenGL (Haiku): add support
  * Chore: remove unused `#include`s
  * GPU: add missing variable inits
  * Bluetooth (Haiku): suppress debug output of system API
  * PhysicalDisk (Haiku): report drive type
  * Presets: print keyboard &amp; mouse in all.jsonc
  * Bluetooth (Haiku): WIP
  * Gamepad (Haiku): enable
  * PhysicalDisk (Haiku): add support
  * CPUUsage (Haiku): add support
  * Gamepad (Haiku): add support
  * Disk (Haiku): code cleanup; honor `option-&gt;folders`
  * Mouse / Keyboard (Haiku): code cleanup; ignore disabled devices
  * NetIO (Haiku): code cleanup
  * NetIO (Haiku): add support
  * Keyboard (Haiku): add support
  * Mouse (Haiku): add support
  * Sound (Haiku): fix runtime error getting mute status
  * Smbios: don't try to scan memory multiple times
  * Revert "Host (Haiku): add debug log"
  * Smbios (NetBSD): add support
  * Sound (Haiku): Init variables unconditionally; fix mute handling
  * InitSystem (Haiku): add support
  * Sound (Haiku): add support
  * Haiku: 32bit fixes
  * Host (Haiku): add debug log
  * Terminal (Haiku): fix konsole version detection
  * Chore (Haiku): silence compiler warnings
  * Smbios (Haiku): add support; enable related modules
  * StringUtils: fix a possible segfault
  * PhysicalMemory: fix `--format json` printing
  * Sound: properly round percent values
  * Weather: honor `display.temp.unit`
  * Battery (Haiku): fix capacity calculation
  * CI: enable `-DENABLE_EMBEDDED_AMDGPUIDS=On`
  * Battery (Haiku): add support (untested)
  * Battery (Haiku): add stub file
  * Logo (Builtin): simplify haiku; add haiku2 from neofetch
  * Uptime (Haiku): silence compiler warnings
  * InitSystem (Haiku): enable support
  * Processing (Haiku): support exe path detection
  * GPU (Haiku): use system API to fetch PCI devices
  * GPU: support embedding amdgpu.ids into fastfetch
  * GPU (Haiku): change the path of pci.ids to hwdata
  * TerminalFont (Haiku): support Haiku Terminal
  * Terminal (Haiku): add pretty name for Haiku Terminal
  * GPU (Haiku): add pci.ids file path
  * Doc: update README.md (#1557) [ci skip]
  * Scripts: download pci.ids by cmake; remove `python-requests` dependency
  * Logo (Builtin): update Rosa linux logo (#1559)
  * OS: remove option `--escape-bedrock`
  * Media (Haiku): enable support
  * Terminal (Haiku): add basic support
  * Display (Haiku): code cleanup; detect manufacture date
  * OS (Haiku): silence warnings
  * Media (Haiku): enable support
  * Sound (Haiku): add stub file
  * Disk (Haiku): add support
  * CPU (Haiku): add support
  * CMake (Haiku): add more optional dependencies
  * Display (Haiku): trim monitor name
  * GPU (Haiku): add support
  * GPU (macOS): fix build error in MacOS 10.13 (#1556)
  * Packaging: update debian stuff [ci skip]</changelog>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1741435200">- Update to version 2.38.0:
  * CI: try fixing CI failures
  * Release: v2.38.0
  * Chore: update image logo
  * Camera (macOS): silence compiler warnings
  * Camera (macOS): fix crashing on old macOS version
  * CI (macOS): remove CodeQL
  * Logo (Builtin): Add Shebang Linux (#1592)
  * Doc: update supported platforms
  * Logo (Builtin): update fastfetch logo to match the svg one
  * Chore (Windows): set exe file icon to fastfetch logo
  * Logo: add fastfetch logo
  * Doc: fix `SI` size prefix description
  * Doc: update changelog [ci skip]
  * Camera (macOS): try fixing segfault in macOS 10.15
  * Brightness: detect &amp; print screen type
  * Terminal (Linux): support termite version detection
  * TerminalFont (Linux): support termite terminal (#1588)
  * JsonSchema: update format json [ci skip]
  * Packages (Linux): Add support for Pisi Linux (#1580)
  * GPU: support percentage num &amp; bar in custom format
  * Logo (Builtin): simplify
  * Logo (Builtin): Added Bedrock Linux small ASCII logo (#1582)
  * Bootmgr (Linux): fix secure boot testing
  * Logo (Builtin): simplify os names
  * OS (Linux): fix VanillaOS detection
  * Builtin (Logo): simplify linuxmint handling
  * Logo (Builtin): add opensuse-tumbleweed_small
  * Disk: add `{mountpoint}` and `{mount-from}` in custom output format
  * Presets: fix OS key in examples/25
  * DateTime (Windows): fix day-pretty output in custom format
  * Presets: add a new example
  * OS: allow customize key format with kernel name and distro name
  * Battery: add missing `{icon}` in key format
  * Chassis (macOS): add support
  * JsonSchema: update format schema
  * Battery (Haiku): handle empty slots
  * Packaging: update debian stuff [ci skip]</changelog>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1742558400">- Update to version 2.39.1:
  * Release: v2.39.1
  * Networking: request HTTP/1.0, as we don't support chunked response
  * Packaging: update debian stuff [ci skip]
  * Packages (Linux): add pkgsrc detection
  * Logo (Builtin): add NetBSD2
  * Display (Linux): fix the error check for ffReadFileData (#1622)
  * Release: v2.39.0
  * Networking (FreeBSD): support fast path without TFO enabled
  * Networking: don't enable TFO if server doesn't support it
  * Networking: don't enable HTTP compression if server doesn't support it
  * Networking (Linux): remove unnecessary variables
  * Networking (Linux): don't generate SIGPIPE
  * Networking (Windows): more verbose log
  * Networking (macOS): support TFO
  * Networking (BSD): support TCP_FASTOPEN
  * Completion (Bash): Use `fastfetch --help-raw` for auto-completion
  * Networking (Windows): print readable error message
  * Networking (Windows): fix libz loading; use TCP_FASTOPEN if available
  * Networking: silence compiler warnings
  * Networking (Linux): handle a case when `sendto()` reports `EINPROGRESS`
  * Networking: move files to a sub folder
  * Networking (Windows): apply the same optimizations of *nix's
  * Netif (Windows): use `GetIpForwardTable2` to support IPv6
  * Networking (Linux): improve performance by TFO and response compression
  * Netif (DragonFly): use code of OpenBSD
  * NetIF (OpenBSD): fix default route detection
  * Doc: update changelog [ci skip]
  * Wifi (macOS): remove usage of Apple80211
  * Completions (Bash): remove `--lib-*`
  * OpenGL: drop OSMesa backend
  * Logo (Builtin): add Bredos
  * Logo (Builtin): Change FoxOS to WolfOS (#1534)
  * Terminal (Windows): detect warp version
  * Wifi (macOS): improve performance of SSID detection on Sequoia
  * Packaging: update debian stuff [ci skip]
  * Kmod (NetBSD): add `__attribute__((__packed__))` to ensure memory layout
  * CI: remove unnecessary deps
  * Logo (Builtin): Add Common Torizon OS as a variant
  * Display (Windows): prefer `DISPLAYCONFIG_DEVICE_INFO_GET_ADVANCED_COLOR_INFO_2`
  * Kmod (NetBSD): add support</changelog>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1743681600">- Update to version 2.40.0:
  * WM (Linux): fix https://github.com/fastfetch-cli/fastfetch/issues/1657#issuecomment-2772749780
  * WM (Linux): query Hyprland version from hyprland dev header
  * Binary: add comments
  * WM (Linux): correctly fall back to calling `wm --version` if `ffBinaryExtractStrings` fails
  * CI: remove Dragonfly BSD
  * WM (Linux): fix (?) Hyprland version detection
  * Release: v2.40.0
  * Uptime: round seconds to the nearest minute
  * DisplayServer (Linux): silence compiler errors
  * Util (Windows): fix mem leaks
  * Util (Windows): fix possible errors in `Unicode.c`
  * Util (Linux): fix executable file check
  * FFlist: use `uint8_t` instead of `char` to store raw data
  * Threading: fix timeout calcuation
  * Netif (Linux): support default route detection for ipv6
  * Wifi: fix code smells
  * PhysicalMemory (Linux): code refactor
  * Users (Linux): support IPv6 client addr
  * Users (Windows): support IPv6 client IP
  * Uptime (NetBSD): fix boot time calcuation
  * TPM (macOS): add support
  * InitSystem (Haiku): set pid=0 if fails to detect init pid
  * Doc: update changelog [ci skip]
  * Revert "CI: build in debug mode"
  * Swap (Windows): support multiple paging files
  * Swap (OpenBSD): fix mem leaks
  * Swap: fix code smells
  * Sound: fix typo and mem leaks
  * Doc: update changelog [ci skip]
  * Chore (Windows): silense compiler warnings
  * fastfetch: load config from fastfetch binary path
  * Logo (Ascii): Change Nexa Linux logo (#1653)
  * Logo (Builtin): change name of  Xray-OS
  * Terminal (Windows): fix file version detection
  * CI: build in debug mode
  * GPU (Windows): fix max frequency detection for AMD ODN
  * GPU (Windows): use ODN as OD7; fix `ADL2_Overdrive8_Current_Setting_Get` call and some other bugs
  * Doc: update changelog [ci skip]
  * TerminalFont (Windows): support Warp Terminal
  * GPU (Windows): try more OD funcs; add more verbose logs
  * Disk (macOS): silense compiler warnings
  * DNS (macOS): detect DNS entries by SystemConfiguration
  * DNS (Linux): add systemd-resolved support; add verbose logs
  * Media: fix code smells
  * Gamepad / Keyboard / Mouse (FreeBSD): break detection earlier
  * Keyboard (FreeBSD): fall back to KDGKBINFO if usbhid fails
  * Gamepad / Mouse / Keyboard (FreeBSD): fix memleaks
  * Host (Windows): fix build on WoA
  * GPU (Windows): actually use correct OD fns for recent AMD GPUs
  * GPU (Windows): add `OverdriveN` functions for AMD
  * GPU (Windows): fix `ADL2_Adapter_AdapterInfoX3_Get` result test
  * GPU (Windows): added verbose logs
  * Global: fix code smells
  * Host (macOS): add new models; fix an invalid model ID
  * Chore: fix code smell
  * Disk (SunOS): remove creation time detection support
  * Util/debug: add missing `#pragma once`
  * Separator: fix `outputColor` doesn't work when `length` is set
  * Chore: fix a lot code smell
  * LocalIP: change `{name}` to `{ifname}` in `--localip-key-format` for consistancy
  * GPU: fix code smell
  * GPU (General): fix GPU device type detection
  * Battery (NetBSD): report remaining time
  * Battery (Linux): fix critical state detection
  * Battery (macOS): fix manufacture date detection
  * GPU (macOS): fix code smell
  * CPU (Linux): fix CPU detection on some PPC platforms (#1640)
  * GPU (Windows): fix code smells
  * GPU: update JSON result structure; fix segfault and memleaks
  * GPU (Windows): support VMEM type detection via nvapi
  * GPU (Windows): rewrite implementation for AMD GPUs using ADL SDK
  * GPU (Windows): support memory type detection for Intel dGPUs
  * GPU: prepare for memory type &amp; shared memory usage detection
  * GPU (Windows): add display-library for future use
  * IO: don't suppress IO in debug mode
  * Bootmgr: report boot order
  * Smbios (OpenBSD): add comments for UEFI systems [ci skip]
  * Logo (Builtin): fix opensuse-tumbleweed_small
  * Wifi (Linux): add verbose logs
  * Wifi (DragonFly): fix building
  * Bootmgr (BSD): add support for OpenBSD and NetBSD
  * BIOS (OpenBSD): check bios type
  * Smbios: add verbose debug logs
  * Smbios (OpenBSD): add support for legency BIOS
  * util/debug: add missing headers
  * Wifi (FreeBSD): use ioctl to improve performance
  * Logo (Builtin): Change WiiLinuxNgx to more generic name (#1633)
  * Packaging: update debian stuff [ci skip]
  * Terminal (macOS): fix Warp Terminal pid detection
  * Presets: update examples/{24,26} [ci skip]</changelog>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1744372800">- Update to version 2.40.4:
  * Release: v2.40.4
  * Fastfetch: fix loading presets in `{exePath}/presets`
  * WM (Linux): remove `v` from Hyprland version
  * Logo (Image): mark kitty image protocol support for warp terminal on macOS
  * Release: v2.40.3
  * Fastfetch: fix loading example configs from presets directory
  * Release: v2.40.2
  * Doc: fix CI errors (2)
  * Doc: fix CI errors
  * Doc: migrate some help texts to Github Wiki pages
  * Doc: update documents
  * Doc: update README
  * Fastfetch: enforce `.jsonc` extension when loading config file
  * Logo (Image): default to kitty protocol in warp terminal
  * Release: v2.40.1
  * Logo: don't try to find files named `-`
  * IO: remove fast path of `ffPathExists`, which causes too many problems
  * TPM (macOS): fix compiling error on old system
  * Packaging: update debian stuff [ci skip]</changelog>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1749729600">- Update to version 2.45.0:
  * Release: v2.45.0
  * Swap (Haiku): detect detailed info
  * Chore (Haiku): don't use hard-coded page size
  * Disk (BSD): silence compiler warnings
  * Swap (DragonFly): add support
  * Swap (SunOS): detect detailed info
  * Swap (OpenBSD): detect detailed info
  * Swap (Linux): add fallback for Android
  * Swap (Linux): support detailed info
  * Swap (FreeBSD): detect detailed info
  * Swap (macOS): detect detailed info
  * Swap: support separated output
  * Swap (Windows): detect detailed info
  * Smbios (DragonFly): acquire SMBIOS info from `/dev/mem`
  * DE (DragonFly): fix build
  * Swap (Linux): use `/proc/swaps`
  * CI (Linux): fix musl build
  * CI (Linux): add missing deps for musl
  * Logo (Builtin): Update logo for Xenia Linux (#1783)
  * Disk (BSD): don't ignore sshfs
  * Packages (Linux): fix dnf package count detection (v2)
  * Packages (Linux): fix dnf package count detection
  * CI: add back disabled DFBSD
  * CMake: fix build of FreeBSD
  * Disk (Linux): don't ignore sshfs
  * CI (Haiku): add build
  * CMake: build FreeBSD `pkg` package
  * Logo: support `"type": "command-raw"`
  * Chore: tidy
  * Fix typo, 15,2 isn't a real mac model number
  * DE (FreeBSD): support KDE version detection
  * Logo (Builtin): add void2
  * Logo (Builtin): update default colors of voidlinux
  * Logo (Builtin): add rhel_small
  * WM: support I3 version detection
  * WM: support FVWM version detection
  * WM: support CTWM version detection
  * Logo (Builtin): add Starry Linux
  * Chore: code cleanup
  * GPU: add more GPU vendors
  * JsonSchema: update `&lt;module&gt;Format` [ci skip]
  * Packages: split code
  * Packaging: update debian stuff [ci skip]
  * Host (Android): add detection for OnePlus market name
  * Release: v2.44.0
  * DisplayServer (Linux): fix errors on KDE beta
  * Disk: add `--disk-hide-fs`
  * Disk: rename `hiddenFolder` to `hideFolder`; add docs
  * Disk: add `hiddenFolders` (2)
  * Logo (Builtin): Add UBLinux Logo (#1764)
  * Disk: add option `--disk-hidden-folders`
  * Disk (Linux): don't hard code hidden mount points
  * TerminalShell (Linux): ignore `script`
  * Logo (Builtin): Add Kylin Logo (Remove ANSI codes) (#1760)
  * Stat: use `ESC 7/8` instead of `CSI s/u`
  * Doc: Add information of where to find example config files (#1759) [ci skip]
  * fish complete: add `--logo-color-[1-9]` completion (#1754)
  * Packaging: update debian stuff [ci skip]
  * CI: silence spell check errors
  * GPU (Linux): embed asahi_drm.h
  * 3rdparty (yyjson): upgrade to 0.11.1
  * PhysicalDisk: trim white spaces of serial
  * Doc: update changelog
  * Media (Windows): detect player name (UMP apps only)
  * Doc: update changelog
  * GPU (AMD): remove usage of `ADL2_Adapter_VRAMUsage_Get`
  * Release: v2.43.0
  * Revert "Vulkan: use `VK_API_VERSION_*` instead of deprecated `VK_VERSION_*`"
  * Sound (macOS): report the volume of muted device as 0%
  * Sound: don't show 255 in custom format
  * Vulkan: use `VK_API_VERSION_*` instead of deprecated `VK_VERSION_*`
  * GPU (Linux): fix CI errors
  * GPU (Linux): detect core usage when libamdgpu is not available
  * GPU (Linux): detect VRAM type of AMD GPUs
  * Smbios: fix transitive include for `loff_t` (#1746)
  * GPU (AMD): seems `ADL2_Adapter_VRAMUsage_Get` reports system mem usage only, not full memory usage
  * GPU (AMD): more verbose logs
  * GPU: don't hide unknown type of GPUs by default
  * Smbios: discard usless values
  * Media (Linux): fix duplicated playback status
  * GPU (Windows): fix incorrect used shared memory size
  * Memory / Swap: always initialize local variables
  * GPU: optionally hide unknown GPUs (#1742)
  * Logo (Builtin): add Hydra Framework logo (#1740)
  * Builtin (Logo): new AthenaOS logo
  * Logo (Builtin): `sd '\$\{c(\d)\}' '$$$1' *`
  * TerminalShell: use ffBinaryExtractStrings result as possible (#1739)
  * DisplayServer (Linux): fix xcb_connect error handling (#1735)
  * 3rdparty: upgrade yyjson to 0.11.0
  * Media (macOS): support macOS 15.4
  * GPU (Linux): fix asahi linux support again
  * Disk (Linux): fix possible bug on 32-bit platforms
  * CPU (FreeBSD): simplify physical core count detection
  * CPU (SunOS): support physical core count and package count detection
  * Display: use height to calculate scale factor
  * CPU (Windows): always use `XxxW`
  * Global: Improve `ARRAY_SIZE` macro using `__is_array`
  * Parsing: silence compiler warnings
  * Packaging: update debian stuff [ci skip]
  * Wifi (NetBSD): fix the ambiguous comment
  * Wifi (BSD): correctly prioritize Wi-Fi protocol detection
  * Release: v2.42.0
  * BIOS: normalize the module name
  * Uptime: fix non-normalized time being shown
  * Global: use ARRAY_SIZE (#1718)
  * Bluetooth (Linux): silence an unused variable warning (#1717)
  * Platform: fix a memory leak (#1716)
  * Doc: update changelog [ci skip]
  * Logo (Chafa): fix setting `chafa.symbols`
  * Camera (OpenBSD): add support
  * CPU (OpenBSD): fix CPU temperature detection
  * Refactor: inline printError into ffPrintError and remove unused static helper
  * Wifi (FreeBSD): fix possible mem leaks
  * Wifi (NetBSD): add support
  * Wifi (OpenBSD): fix file name
  * CPU (NetBSD): add one more method to detect CPU frequency
  * CPU (SunOS): detect CPU temp
  * Logo (Builtin): Add Codex Linux support (#1701)
  * Logo (Builtin): remove GoralixOS
  * Logo (Builtin): add Aurora
  * PhysicalDisk (Linux): don't detect disk type of virtual disks
  * T2/SDE: upstreaming downstream's logo change (#1695)
  * Color: support #RGB and #RRGGBB
  * Packaging: update debian stuff [ci skip]
  * Processing (Windows): fix macro name `__aarch64__`
  * Chore: remove Chinese comments [ci skip]
  * CI (Linux): enable chafa on Linux aarch64
  * CI (Linux): bump GH runner for linux-amd64
  * Release: v2.41.0
  * Bluetooth (NetBSD): add base implementation
  * Doc: add installation instructions for pkgsrc [ci skip]
  * Uptime (Windows): use `QueryUnbiasedInterruptTime`
  * CMake: use mincore on WoA
  * Processing (Windows): use `GetOverlappedResultEx` on WoA
  * CI (Windows): add WoA
  * GPU (Linux): add temp detection for Intel GPU
  * NetIO (Linux): use `openat`
  * Logo (Builtin): Add 2 more Alpine logos (#1687)
  * CPU (Linux): fix build
  * Chore: simplify `fastfetch.h`
  * Wifi (FreeBSD): remove unused sys headers
  * CPU (Linux): add new ARM part numbers
  * Wifi (OpenBSD): add support
  * Doc: add comments about displaying image logo on Windows [ci skip]
  * WM (FreeBSD): enable Hyprland version detection
  * CPU (Windows): use PDH to detect thermal temp
  * Logo (Builtin): Add support for anduinos (#1684)
  * Platform: retrieve full user name
  * Fastfetch: fix loading presets in `{exePath}/presets`
  * IO (Windows): support `~` expanding
  * Chore: update comment
  * Util (Windows): use native win32 functions
  * WM (Linux): remove `v` from Hyprland version
  * Packages (Linux): add soar packages count (#1531)
  * PhysicalDisk (Linux): add more disk types
  * PhysicalDisk (Linux): don't detect disk type for virtual disks
  * Revert "CPU (FreeBSD): remove using of freq_levels"
  * CPU (FreeBSD): don't assume one SMT group has only two threads
  * CPU (Linux): detect physical core count on non-x86 platforms</changelog>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1751112000">- Update to version 2.46.0:
  * Doc: update changelog [ci skip]
  * Logo (Builtin): simplify kali linux
  * Logo (Builtin): add Kalpa Desktop
  * Release: v2.46.0
  * Doc: update `help.json`
  * Logo (Builtin): rename hydra framework to hydrapwk
  * Chore: code cleanups
  * Global: add missing O_CLOEXEC to open()
  * GPU (Linux): fix an issue which vram_usage is bigger t han vram_visible
  * GPU (Linux): detect shared vram usage of AMD GPU
  * GPU (Linux): correctly call radeon driver
  * GPU (FreeBSD): fix mem leaks
  * GPU (Windows): fix build
  * GPU (Linux): fix building without features
  * GPU (Linux / FreeBSD): add DRM detection support for old radeon driver
  * GPU (Linux / FreeBSD): unifies DRM related code and code clean up
  * GPU (FreeBSD): support detection by DRM [wip]
  * WM (FreeBSD): fix Hyprland version detection
  * GPU (macOS): detect Metal 4 support
  * OS (macOS): seems macOS 26 Beta 1 still reports itself as macOS 16. Honor it.
  * CI: upgrade OpenBSD version
  * CI: split amd64 and arm64 builds
  * Kmod: remove Chinese comments [ci skip]
  * Board (macOS): detect board-id if available
  * Logo (Builtin): add GhostFreak
  * Logo (Builtin): added AnushOS (#1806)
  * Global: set `SetErrorMode(SEM_FAILCRITICALERRORS)` globally
  * Logo (Builtin): Add HarmonyOS support (#1804)
  * Packages (OpenBSD): fix counting by ignoring hidden folders
  * CPU (NetBSD): properly support PowerPC (#1802)
  * WM (MacOS): Added Aerospace WM detection
  * DE (macOS): report Liquid Glass on macOS 26+
  * OS (MacOS): add macOS 26 Tahoe
  * Logo (Builtin): detect and add TrueNAS Scale
  * OS (Linux): detect Raspberry Pi OS
  * Disk (Linux): hide `/boot/firmware` by default
  * Logo (Builtin): add xenia_old; update colors of xenia
  * TerminalFont: support rio terminal emulator (#1789)
  * JsonSchema: document `swap.separate`
  * CPU (Windows): use `perflib.h` instead of `pdh.h` for querying CPU temp
  * Logo (Builtin): improve colors of bedrock_small
  * Host (Linux): detect Linux Binary Compatibility on FreeBSD
  * Host (Linux): more detailed info of WSL
  * Logo (Builtin): Add Fedora2_small (#1785)
  * Packaging: update debian stuff [ci skip]</changelog>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1752840000">- Update to version 2.48.1:
  * Release: v2.48.1
  * WM (Linux): fix a copy-paste error
  * Modules: don't report errors when `condition` key is set
  * Packages: add new option `--packages-combined`
  * JsonConfig: add `modules[n].condition` to run modules conditionally on different platforms
  * Version: replace `WIN32` with `Windows` and `Darwin` with `macOS`
  * Processing (*nix): fix compiling on Android 7
  * Processing (Windows): redirect unused std handles to `NUL` to avoid potential errors
  * Processing (*nix): use traditional `fork-exec` on Android and OpenBSD
  * Packaging: update debian stuff [ci skip]
  * WM (Linux): add Openbox version detection
  * Chore: silense compiler warnings
  * Doc: optimize README; fix typo
  * Release: v2.48.0
  * Logo: partially revert c5c0e54
  * Separator: remove `formatArgs`
  * Display: add option `--fraction-ndigits`
  * Uptime / Users: add `years`, `days-of-year` and `year-fraction`
  * Chore (Linux): silience compiler warnings
  * JsonSchema: update `xxxFormat` [ci skip]
  * Disk: add keys `years`, `days-of-year` and `years-fraction`
  * Logo (Builtin): rename ada to xray_os (#1845)
  * CMake: reconfigure after adding / removing logos
  * README: document how to run multiple modules on command line [ci skip]
  * Processing (Linux): cache the index of `$LANG`
  * README: add DeepWiki badge [ci skip]
  * GPU (Windows): fix compiling on x86-32
  * Logo: don't print builtin logo if the provided logo source cannot be found
  * Logo: load `.raw` files as raw image file
  * Logo: don't load text files as image file
  * Logo: don't parse file paths as builtin logo name
  * GPU (Windows): more method to detect device name
  * GPU (Windows): detect GPU frequency by default
  * GPU (Intel): prefer matching GPU with bus id
  * Packages (Linux): clean up nix user package detection
  * Packages (Linux): add /etc/profiles/per-user detection for nix user packages
  * GPU (Windows): ignore invalid temps
  * GPU (Windows): greatly improve performance of GPU temp detection
  * Logo (Builtin): add AxOS
  * Logo (Builtin): add the Minimal System logo (#1837)
  * Revert "GPU (macOS): update how integrated GPUs are detected"
  * CI (Haiku): Apply work-around for work directory
  * Sound (macOS): improve device id detection
  * Processing (Linux): use `posix_spawnp` for better performance
  * Chore (Linux): silence compiler warnings
  * GPU (Windows): use nvapi to detect GPU type
  * GPU (Windows): clean up
  * Chore (Windows): tidy
  * GPU (Windows): fix Win7 compatibility
  * GPU (Windows): new method to detect device type
  * GPU (Windows): add driver version fall back
  * CMake (Windows): remove `setupapi` dependency
  * Battery (Windows): use `CMAPI` instead of `SetupAPI`
  * GPU (Windows): use `CMAPI` instead of `SetupAPI`
  * Presets: add a new example
  * PhysicalDisk: unifying white space trimming
  * OS (Linux): detect fedora variants
  * Chore: Add a missing semicolon (#1828)
  * Packaging: update debian stuff [ci skip]
  * OS (Linux): remove duplicated code
  * Doc: update README [ci skip]
  * CMake: remove the unused option `ENABLE_CPUUSAGE_PERFLIB`
  * Release: v2.47.0
  * README
  * Logo (Builtin): always use `FG_DEFAULT` on title and keys
  * Logo (Builtin): fix colors of raw Linux logo
  * Logo (Builtin): fix colors of DragonFly
  * Revert "Logo (Builtin): `:%s/FG_WHITE/FG_DEFAULT/g`"
  * CPUUsage (Windows): detect perflib support dynamically based on OS version
  * OS (Linux): add support of Xubuntu
  * CPUUsage (Windows): disable `ENABLE_CPUUSAGE_PERFLIB` by default
  * CMake: fix typo
  * CPUUsage(Windows): add new method using Windows Performance Library
  * CMake (SunOS): drop pciaccess dependency
  * Chore (Windows): move `perflib_.h` to somewhere global
  * Terminal (Linux): ignore `init` and `systemd`
  * CpuUsage (Windows): refine KernelTime calculation by removing unused DPC and interrupt time
  * CpuUsage (Linux / BSD): include interrupt and softirq times in CPU usage calculations
  * IO: increase `PROC_FILE_BUFFSIZ` to avoid possible short reads
  * README: add the OpenBSD and DragonFly installation method [ci skip]
  * Media (macOS): support old macOS version
  * Media (macOS): simplify now playing handling
  * Logo (Builtin): `:%s/FG_WHITE/FG_DEFAULT/g`
  * Display (FreeBSD): silence a compiler warning
  * GPU (FreeBSD): fix compiling when libdrm is not available
  * OS (Linux): append version string for Ubuntu variants
  * GPU (OpenBSD): fix pci.ids file location
  * OS (macOS): force reporting 26 on macOS Tahoe
  * OS (Linux): improve RPIOS detection
  * OS (Linux): use `ffStrbufSetStatic` where applicatable
  * OS (Linux): clean up dietpi related code
  * OS (Linux): detect DietPi
  * CI (FreeBSD): run with 14.3
  * Sound (SunOS): rework; drop pulseaudio dependency
  * Shell (SunOS): ignore leading `-`
  * GPU (SunOS): simplify
  * PhysicalDisk (SunOS): rework; support more device types
  * PhysicalDisk (SunOS): add support
  * Logo (Builtin): use FG_DEFAULT instead of FG_WHITE
  * GPU (SunOS): rework GPU detection
  * Chore: remove useless semicolons
  * BIOS (SunOS): detect BIOS type
  * OS (macOS): remove useless code
  * Packaging: update debian stuff [ci skip]</changelog>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1754049600">- Update to version 2.49.0:
  * Battery / Uptime: update document of custom format
  * Battery: address copilot feedback
  * WM (Linux): fix a copy-paste error.
  * Release: v2.49.0
  * Doc: update readme
  * Percent: add option `--percent-width`
  * Uptime / Battery: add formatted duration string in custom format
  * Global: add new unit related options
  * DiskIO: fix wrong `/s` assignment in custom format
  * Packages (Windows): find scoop installation path by parsing scoop config file
  * Font (Linux): parse unicode escaped string stored by qt5ct
  * FFstrbuf: add function `ffStrbufAppendUtf32CodePoint`
  * GPU (Intel): read render engine temperature only
  * WM (Linux): add labwc version detection support
  * CPU (Android): make SOC detection more loose
  * CPU (Android): add more QSD SOCs
  * Disk: update default value of `hideFolders`
  * Packages (Windows): don't rely on the existance of `$SCOOP` when detecting scoop packages
  * Logo (Builtin): remove Evolinx
  * GPU (macOS): silence compiler warnings
  * Wifi (macOS): use `sudo wdutil info` on Tahoe
  * FFstrbuf: add function `ffStrbufSubstr`
  * Chore: add FF_C_NONNULL
  * Version: correct the variable name 'name' to 'project-name'
  * Users: correct the variable name 'session' to 'session-name'
  * LocalIP: cleanup printing code
  * LocalIP (Windows): fix link speed calcuation
  * LocalIP (Windows): ignore stopped interfaces
  * Netif (Windows): correct default route detection (v2)
  * JsonSchema: improve definitions of `colors` and `conditions` [ci skip]
  * CI (Haiku): remove work around
  * Editor: correct the variable name `full-path` to `path`
  * Wifi (Linux): fix interface status when the interface is up but not connected
  * Presets: improve `25.jsonc`; add verbose comments [ci skip]
  * Netif (Windows): fix default route detection when the default adapter is disabled
  * CI (NetBSD): remove opencl support to fix building
  * Packages (Linux): remove `qi` support
  * Packages (Linux): improve accuracy of flatpak count detection
  * Logo (Builtin): add Aeon
  * GPU (Linux): add GPU temp detection for nouveau driver
  * GPU (Linux): support advanced detection for nouveau driver</changelog>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1755518400">- Update to version 2.50.2:
  * Release: v2.50.2
  * LocalIP: refines default route detection and JSON output for local IPs
  * Netif (Linux): improves default route detection and error handling
  * Netif (Linux): add verbose logs
  * CI: adds default build type to CI environment
  * LocalIP (Linux): add verbose debug log
  * LocalIP (Linux): fixes incorrect return and ensures struct initialization
  * LocalIP: fix `showMac` does not honor `defaultRouteOnly`
  * FFstrbuf: wrap yyjson.h include in conditional
  * Packages (Linux): fixes Linglong detection by counting linglong layers (#1903)
  * Release: v2.50.1
  * Packages (Linux): fixes Linglong detection on Debian (#1899)
  * Percent: refactors bar color logic for clarity and consistency; update examples
  * Revert "Percent: fix a copy-paste error"
  * Packages (Android): fix building
  * Doc: update changelog [ci skip]
  * Doc: update changelog
  * Flashfetch: disable decimal digits in Disk module
  * Separator: honors FQDN settings in Title module
  * Doc: update changelog
  * Fastfetch: adds support for reading JSON config from stdin
  * Chore: removes undocumented flag `--load-config`
  * Doc: update changelog [ci skip]
  * Release: v2.50.0
  * Global: fixes `-ffast-math` compatibility
  * GPU (macOS): don't set `platformApi` to `Metal` when Metal API is not used
  * GPU (Windows): ignore software adapters; add verbose logs
  * Doc: update changelog [ci skip]
  * Cursor (macOS): improves color detection and rounding for cursor info
  * Logo (Builtin): add ObsidianOS (#1890)
  * Packages: unifies Nix package detection code
  * CI: upgrade to `actions/checkout@v5`
  * README: HomeBrew -&gt; Homebrew (#1891) [ci skip]
  * Doc: update README &amp; Changelog
  * OS (Linux): tidy
  * Revert "CPU (macOS): use CPUID for freq detection on Intel"
  * CI (Haiku): reduce errors when installing deps (hopefully)
  * CommandLine: add `--gen-config-full`
  * Presets: add an example
  * Percent: fix a copy-paste error
  * JsonSchema: remove unused properties [ci skip]
  * Doc: don't recommand Ubuntu PPA [ci skip]
  * OS (Linux): fix lliurex detection (#1882)
  * DisplayServer: merge `serverVender` into `wmProtocolName`
  * Display (Linux): show brand of Xserver in WM section (#1888)
  * Chore: remove unused functions
  * Netif (SunOS): work around a bug that fails to detect default route for IPv4
  * GPU (FreeBSD): fix gpu driver detection when DRM is used
  * CPU (macOS): use CPUID for freq detection on Intel
  * LocalIP (Linux): fix building
  * LocalIP (SunOS): add speed detection support
  * LocalIP (SunOS): support `isIPv6AddressPreferred`
  * LocalIP (SunOS): add more if flags
  * LocalIP (Linux): fix compiler warnings
  * Networking (SunOS): fix compiler warnings
  * Netif (SunOS): fix compiler warnings
  * LocalIP (BSD): fix compiling
  * Wifi: updates default WiFi percentage thresholds
  * LocalIP: improve preferred IPv6 address detection
  * Netif: unifies BSD netif handling
  * Netif (Haiku): add preferred source addr
  * NetIO (SunOS): fix build
  * LocalIP (BSD): fix building
  * Netif: refactor API for dual-stack route detection
  * Display: fix invalid `size.maxPrefix` default value in generated config file
  * Netif (BSD): split different implementations
  * LocalIP: consider preferred source address when retrieving default route (#1883)
  * LocalIP (Windows): show only preferred IP when `showAllIPs` is not set
  * Chore: fix building on Windows
  * JsonConfig: make all non-module keys case-sensitive
  * JsonConfig: write all flags when generating config file
  * Doc: remove command line flags of modules
  * Modules: refactor module option handling for static allocation
  * Modules: export module info
  * Modules: add init and destroy option callbacks to module info
  * Disk (Linux): ignore Bedrock Linux subvolumes
  * OS (Linux): don't detect Bedrock linux when ran restricted
  * JsonSchema: Improves JSON schema enums with oneOf objects containing descriptive explanations for allowed values
  * GPU: support `"hideType": null`
  * Display: add `compactMode: null`; improve json schema
  * Modules: remove all `parseCommandOptions` and related stuff
  * JsonSchema: small improvements
  * Display: allow `"compactType": null`; improve json schema
  * Disk: add missing JSON config options
  * Percent: silense compiler warnings
  * JsonConfig: refactor JSON key handling to improve safety and consistency
  * JsonConfig: refactor string buffer JSON handling for robustness
  * Doc: update changelog; fix typo
  * Presets: add new config; fix old config
  * Option: fix a possible null reference segfault
  * Doc: update changelog [ci skip]
  * Bar: refactor config to use nested objects and deprecates old fields
  * Bar: add customizable bar color options for percentage bars
  * Bar: add configurable elapsed bar borders for percent bars
  * Wifi (macOS): disable using of `ipconfig` on 15.6 too
  * Chore: remove sensitive data [ci skip]
  * Changelog: fix typo [ci skip]
  * Packaging: update debian stuff [ci skip]</changelog>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1759060800">- Update to version 2.53.0:
  * CI: fix release action
  * Packaging: updates debian stuff [ci skip]
  * Release: v2.53.0
  * CPU (Android): adds support for new Qualcomm and MediaTek SoC codes
  * Doc: update changelog [ci skip]
  * CPU (Linux): adds support for new ARM C1 series CPU part IDs
  * Zpool: increase libzfs so version to 6
  * CI: upgrades runner of intel macOS
  * CPU (Windows): refines ARMv8.4-A detection to require LSE2
  * OS (Linux): Better Ubuntu flavor detection
  * Wifi (macOS): add (B)SSID detection back for Tohoe 26.0
  * TerminalFont: improve ghostty with command `ghostty +show-config`
  * Logo (Builtin): update ObsidianOS logo (#1970)
  * Disk: refactors mountpoint matching to use shared string utilities
  * CommandOption: refactors code with `ffStrbufSeparatedContainIgnCaseS`
  * FFstrbuf: adds more functions to match separated strings
  * Gamepad / Keyboard / Mouse: improves device error handling and memory cleanup
  * Gamepad / Keyboard / Mouse: adds support to ignore input devices by name prefix
  * Logo (Builtin): adds TempleOS
  * Disk: allows array input for disk folder and filesystem options
  * CI (Windows): add chafa dependency
  * TerminalFont: Improves Ghostty font config parsing with fallback font detection
  * Revert "Logo (Builtin): add Starry Linux"
  * Disk (Linux): avoids invalid disk creation times before Linux epoch
  * Disk (Linux): replace statx(2) call to syscall(2)
  * CI: adds glibc polyfill step for compatibility
  * CI: merge more jobs
  * CI: update cmake version
  * CI: merge amd64 and aarch64 code with matrix
  * CPU (Windows): trims vendor string read from registry
  * CPU (Windows): handles zero temperature data and refactors value use
  * Wifi (macOS): removes wdutil-based Wi-Fi detection code
  * Presets: add a new example [ci skip]
  * 3rdparty: upgrade widecharwidth
  * CPU (Linux): replaces HWCAP defines with explicit bitmasks for ARM
  * CPU (Linux): add new ARM part numbers
  * LocalIP: adds IPv6 type selection for local IP display
  * Separator: uses widecharwidth for Unicode wcwidth and fixes issue that wchar_t on Windows is 2-byte length
  * Separator: rename property `length` with `times`
  * OpenGL (Windows): simplifies code by removing custom window proc
  * Packaging: update debian stuff [ci skip]
  * Doc: update changelog
  * Global: renames `fractionTrailingZeros` enum to `always/never` for consistance
  * Fastfetch: removes redundant assignment in display config parsing
  * Release: v2.52.0
  * Btrfs (Linux): refactors Btrfs allocation to use profile string
  * Btrfs (Linux): adds tracking of Btrfs data copy counts
  * Terminal: ignores WSL2 unknown process for terminal detection
  * WMTheme (Linux): supports labwc on XFCE4
  * CPU (Linux): add cpu name detection for ia64
  * Doc: update README
  * Settings: renames GNOME settings accessor for clarity
  * Wallpaper (Linux): improves XFCE wallpaper detection via property enumeration
  * Settings: removes direct XFConf support in favor of DBus backend
  * DBus: adds function `ffDBusGetInt`
  * Dbus: adds 2nd argument to ffDBusGetMethodReply
  * CI: bump dependencies
  * Doc: update changelog
  * Fastfetch: improves frequency display config validation and schema
  * Fastfetch: add option `--faction-trailing-zeros`
  * Logo (Chafa): fixes setting `logo.width` with chafa
  * JsonSchema: update
  * Fastfetch: defaults `display.fraction.ndigits` to 2
  * Fastfetch: informs users that module-specific CLI options are no longer supported
  * LocalIP (Linux): skips interfaces without IPs unless MAC display is enabled
  * JsonConfig: fixes `fractionNdigits` will be incorrectly set to `0` when specifying `null`
  * Display: rearranges default format; removes scaled resolution
  * LocalIP: honors `fractionTrailingZeros`
  * Global: adds configurable trailing zeros for double formatting
  * DisplayServer: improves display size rounding and argument clarity
  * Display (Linux): detect scale factor for X11
  * Global (Android): enable X11 related stuff
  * CMake: enable zlib on all platforms
  * DisplayServer (Android): update WM name accurately
  * CMake (Android): link to libm
  * Release: v2.51.1
  * CPU (macOS): removes reliance on unavailable ARM capability headers on macOS
  * Packaging: update debian stuff [ci skip]
  * CPU/GPU (Linux): Improves CPU/GPU temp detection accuracy on Linux/Android
  * Revert "Uptime (Windows): use `QueryUnbiasedInterruptTime`"
  * JsonSchema: update
  * DisplayServer (Linux): upgrade kde-output-device-v2
  * Release: v2.51.0
  * GPU (Android): adds GPU temp detection support
  * Fastfetch: clarify that `--debug` is debug-mode only
  * CPU (Linux): improve temp detection
  * Battery (Android): fix battery temp detection
  * DisplayServer (Android): fix display server name
  * Global: handles missing config directories more gracefully
  * InitSystem (GNU): support shepherd detection
  * CPU (Windows): detects march on WoA
  * CPU (macOS): detects march on Apple Silicon
  * CPU (Linux): detects march on aarch64
  * Processing (Linux): enhances robustness when extracting process name and related fields
  * DiskIO (Linux): trim trailing white spaces
  * Chore: silense compiler warnings
  * CPUUsage: adds user guidance when CPU time fails to increase
  * LocalIP (GNU): adds MAC addr detection support
  * InitSystem: tidy
  * CMake (GNU): disable wifi support
  * Processing (GNU): fix command name reading
  * Common (GNU): more `__GNU__` tests
  * Terminal (GNU): enable version detection
  * Processing (GNU): hurd uses `cmdline` instead of `comm`
  * WM (GNU): enable
  * Global (GNU): code cleanups
  * Chore: tidy tabs
  * CMake (GNU): enable a lot of things
  * localip: Remove AF_LINK on GNU.
  * WIP: shepherd initsystem
  * Fix localip_linux on GNU
  * disable ffPackagesGetNix on when it is not defined
  * Port netif_gnu to the new api.
  * Fork netif_linux to netif_gnu.
  * Start work on GNU
  * TerminalShell: remove special handling of hyfetch
  * Fastfetch: improves config file generation message with tips
  * Chore: silence compiler warnings
  * CPU: fix building on non-x86
  * CPU: adds CPU microarchitecture detection for x64 and reporting
  * Disk: adds formatted free and available disk size fields
  * Logo (Builtin): adds AerynOS
  * Processes (Linux): be compatible with Hurd
  * DisplayServer (Android): update WM name
  * Fastfetch: improves format help output for config and variables
  * WM (Linux): uses the same X11 props as neofetch to query WM name
  * DE (Linux): adds Trinity version detection support
  * GPU (BSD): fallbacks to `pciids/pci.ids`
  * Packaging: update debian stuff [ci skip]
  * GPU (BSD): always use `pci.ids` provided by hwdata
  * Disk: disable hyperlink by default and move it to custom keys
  * TerminalShell (Linux): always ignore pid1 (v2)
  * TerminalShell (Linux): always ignore pid1
  * Disk (Linux): remove unused headers
  * Common: corrects the position for appending milliseconds
  * LocalIP (Linux): improves netlink route parsing by avoiding possible message truncation
  * FFstrbuf: handles double rounding and zero representation in formatter
  * GPU (Windows): improves GPU detection by refining device filtering
  * Shell (Windows): be compatible with fish 4 built by MSYS2
  * Common: refactors number formatting to use type-specific append functions
  * Format: replaces format specifiers with type-safe append functions
  * FFstrbuf: improves double formatting precision handling
  * Duration: use `ffStrbufAppendUInt`
  * FFstrbuf: adds number appending functions
  * Logo (Builtin): honor `logo.width`
  * JsonConfig: support JSON5
  * Common: refactors time formatting to use a shared buffer and utility macro
  * 3rdparty: upgrade yyjson to 0.12.0
  * JsonConfig: adds 'succeeded' module condition to JSON config
  * OS: set the icon of unknown OS type as a cog
  * Modules: return bool to indicate whether the detection is succeeded
  * CI (DFBSD): enable
  * CI (SunOS): fix build
  * CPU (macOS): changes CPU to M2 Pro for Mac14,12 host (#1915)</changelog>
</package>
<package pkgid="897f35be73a522610c2d448ddfbaa32a925e8158cc7b5ef2f3a248fd10075aac11eafa5a9434e95ed98493434376e98c91c1a936aaffe4f4c7a8e455b0cccaa7" name="fastfetch-zsh-completion" arch="noarch">
  <version epoch="0" ver="2.53.0" rel="1.10"/>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1731153600">- Update to version 2.29.0:
  * CMake (OpenBSD): enable bluetooth detection
  * CMake (NetBSD): add `/usr/pkg/lib` to rpath
  * GPU: fix build if libpciaccess is not available
  * Camera (OpenBSD): add support (?)
  * OpenGL (NetBSD): use correct so file
  * Release: 2.29.0
  * OS (BSD): don't check for debian and ubuntu variants
  * OS (Linux): fix build
  * Library (Windows): load dlls at current exe path
  * Vulkan: drop windows-i686 support
  * Logo (Builtin): add Lilidog
  * OS (Linux): detect Lilidog
  * CI: remove windows-i686
  * Doc: update changelog
  * CI (DragonFly): build with chafa &amp; libelf
  * Libc (BSD): always initialize variables
  * Libc (DragonFly): add support
  * CI: build on DragonFly
  * Netif (SunOS): fix compiling
  * Sound (DragonFly): add support
  * DiskIO (DragonFly): add support
  * Doc: update changelog
  * OS (Linux): improve performance of proxmox version detection
  * Global: support DragonFly BSD
  * Brightness (NetBSD): disable
  * Doc: update changelog
  * Logo (Builtin): update OpenSUSE Leap
  * CI (NetBSD): release NetBSD
  * CI: remove libv4l
  * NetIO (*BSD): support OpenBSD &amp; NetBSD
  * Users (OpenBSD): add support
  * DiskIO (SunOS): remove dev path
  * DiskIO (OpenBSD): add support
  * DiskIO (NetBSD): add support
  * Logo (Builtin): make aperture colorable
  * CI (OpenBSD / NetBSD): embed pci.ids
  * Processes (NetBSD): add support
  * GPU: use `pciaccess` to enumerate PCI devices
  * CMake (NetBSD): set rpath
  * CPU (Android): add QS8E
  * Bios (NetBSD): try detecting boot method
  * Shell / Terminal: fix proc path detection
  * Platform (NetBSD): fix exe path detection
  * Disk (NetBSD): fix disk size detection
  * CPU (NetBSD): add support
  * Packages (NetBSD): add support
  * Keyboard (Linux): silence compiler warnings
  * CMake (*BSD): detect videodev2
  * CI (NetBSD): try fixing build
  * CI (NetBSD): add more dependencies
  * DisplayServer (Linux): silense compiler warnings
  * Global: remove stb_printf
  * Disk (OpenBSD): fix build
  * CMake (NetBSD): detect X11 and other packages
  * Disk: support NetBSD, improve hidden partition detection
  * NetBSD: support CPUUsage / Memory / Swap
  * CMake: allow to replace native *printf to stb_*printf
  * CI: fix a copy-paste error
  * Uptime (NetBSD): fix invalid result
  * CI: try adding netbsd
  * Global: make it compile on NetBSD
  * Logo (Builtin): update PikaOS (#1361)
  * Logo (Builtin): add SummitOS
  * Logo (Builtin): add XCP-ng
  * Logo (Builtin): update OpenSuse Tumbleweed
  * Global: overall optimization
  * 3rdparty: add stb_sprintf
  * Editor: fix the Vim version detection (#1356)
  * CMake: define `NOMINMAX` on Windows
  * CMake: use 64bit time_t on Linux
  * Editor: optimize editor version parsing (#1355)
  * Packaging: update debian stuff [ci skip]</changelog>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1731931200">- Update to version 2.30.1:
  * CMake: check return code of python scripts
  * Release: v2.30.1
  * CMake: fix the destination where `fastfetch_pciids.c.inc` is generated
  * CMake: Fixed the destination where fastfetch.1 is generated. (#1403)
  * Packaging: update debian stuff [ci skip]
  * Release: v2.30.0
  * Doc: remove guix package installer as it's outdated [ci skip]
  * Display: concat flags
  * GPU (Windows): fix a bad assignment
  * Terminal (Linux): support tilix version detection
  * NetIO (BSD): remove unnecessary checks
  * NetIO (BSD): add txDrops detection if supported
  * NetIO (macOS): fix 32bit trancation
  * Scripts: `gen-man.py` honors SOURCE_DATE_EPOCH. (#1400)
  * Logo (Builtin): update openSUSE Tumbleweed
  * Doc: update changelog [ci skip]
  * Percent: in custom format, only set num and bar string if enabled in percent config
  * Doc: update schema for percent type config
  * Percent: allow use enum to set type value in JSON config
  * Global: support percent type config in module level
  * Global: pack all enums and make flag enums unsigned
  * CPU (Linux): add more Apple SOC code names
  * Host (Android): detect marketing name of vivo smartphone
  * IO (macOS): fix logo fails to load from symlinked files
  * Processing (macOS): fix exe path detection
  * Util (macOS): cleanup `cf_helpers.c`
  * CMake: use `gen-man.py` to generate man file
  * Scripts: clean up `gen-man.py`
  * Scripts: make `gen-pciids.py` executable
  * Scripts: Add python script to generate man page (#1392)
  * GPU (macOS): apply the same logic as CPU just in case
  * CPU (macOS): try fixing CPU freq detection on Apple M4
  * Media (macOS): try fixing error `CFStringGetCString() failed`
  * Smbios: clean up more garbage values
  * StringUtil: rename `ffStrCopy` and correctly reflect its usage
  * Shell (macOS): try fixing segfault in old macOS
  * DisplayServer (NetBSD): detect WM / DE by process name
  * Packages (Linux): add qi support
  * Revert "IO: optimize createSubfolders (#1382)" (#1390)
  * tests: add FFstrbuf smallest allocation test &amp; minor fix (#1387)
  * Logo (Builtin): add cosmicDE logo (#1386)
  * Doc: fix typo in README (#1385) [ci skip]
  * OS (Android): display android icon
  * Logo (Builtin): add Unifi
  * CPU (OpenBSD): support CPU temp detection
  * Disk: be able to print disk indices
  * Battery: don't print index in multi-battery device
  * Sound (BSD): trim device names
  * Version (MidnightBSD): support libc version detection
  * Packages (BSD): support mport
  * Logo (Builtin): add MidnightBSD
  * FFstrbuf: fix small FFstrbuf allocations in ffStrbufEnsureFree (#1383)
  * IO: optimize createSubfolders (#1382)
  * DisplayServer: fix deprecation warnings
  * Host (macOS): add HwModel support for new Mac (2024) (#1381)
  * Bluetooth (Windows): detect battery level
  * Bluetooth (Windows): detect battery (WIP)
  * Logo (Builtin): fix Lilidog
  * FFstrbuf: correct definition of `StrStrIA`
  * Bluetooth (Windows): fix mac address detection
  * CMake: Add initial support for MidnightBSD (#1377)
  * Bluetooth (macOS): normalize mac address strings
  * Bluetooth (macOS): support battery level detection
  * Monitor: don't display `()` if display name is not available
  * Display: add `hdr-compatible`
  * Packaging: update debian stuff [ci skip]</changelog>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1733227200">- Update to version 2.31.0:
  * Display (Linux): detect bit depth when libdrm is used
  * Terminal: Support sakura version &amp; font detection
  * Release: v2.31.0
  * Processing (Linux): interrupt poll &amp; read syscalls when the child process is exited
  * Wifi (Linux): detect Wifi-7
  * Wifi (Windows): make unit of bitrates be consistant
  * Completion (Zsh): fix syntax error in completion file (#1421)
  * WM (Linux): fix wl-restart parsing (#1422)
  * Logo (Builtin): add Windows Server 2025
  * GPU (Linux): detect GPU NV type
  * CPU (Windows): code cleanup
  * CPU (Linux): support up to 128-socket boards
  * CPU: change `cpuCount` to `packages`; support custom format
  * CPU: remove duplicate whitespaces in CPU name
  * CPU (Linux): refactor; fix cpu count detection
  * Support for dual CPU systems  (#1417)
  * CI: fix building on macOS
  * Display (macOS): don't crash with NULL pointer references
  * Logo (Builtin): update MidOS
  * OS (Linux): check for lmde
  * Scripts: use datetime to get date and set timezone to UTC (#1410)
  * Display: change physical size detection to use basic display parameters
  * Users: fix invalid var name
  * Wifi (FreeBSD): support channel &amp; frequency detection
  * Wifi (Android): silence compiler warnings
  * Chore: silence some warnings
  * Wifi (Android): report more props
  * Wifi: print channel band
  * Wifi (Linux): detect frequency &amp; channel number
  * Wifi (macOS): fix build on old OS version
  * Display: report ppi to 0 if screen size is not available
  * Wifi: detect channel and frequency
  * Display: don't report screen size when display is mirrored
  * CMake: fix possible linking errors in `BINARY_LINK_TYPE=dynamic` mode
  * Display (Linux): fix preferred resolution detection for wayland
  * Display (FreeBSD): fix build
  * Display: print preferred resolution &amp; refresh rate in custom format
  * Display: add scale factor in custom format
  * Display (Android): fix build
  * Display (Windows): detect preferred resolution &amp; refresh rate
  * Display (macOS): detect maximum resolution &amp; refresh rate
  * Display (Linux): detect preferred resolution and refresh rate
  * DisplayServer (Linux): remove support of xcb &amp; xlib
  * Wifi (Linux): improve performance
  * DBus: use `general.processingTimeout` as its timeout instead hard coding
  * Media (Linux): improve performance of dbus communication
  * mtgpu: header file cleanup for forward compatibility (#1405)
  * Packaging: update debian stuff [ci skip]</changelog>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1734523200">- Update to version 2.32.1:
  * Release: v2.32.1
  * Packages (OpenBSD): fix a typo that prevents package counting from working
  * Packaging: update debian stuff
  * Release: v2.32.0
  * Revert "Display (Linux): prefer detecting physical size from EDID"
  * Wifi (FreeBSD): early break if the interface is not associated
  * WM (Linux): added ratpoison window manager (#1442)
  * Version: fix format parameter name
  * Logo (Builtin): improved debian ascii logo (#1441)
  * OpenGL (NetBSD): try fixing build
  * Display (FreeBSD): don't try to use `/sys` on FreeBSD
  * WM (FreeBSD): improve WM detection for Wayland
  * OpenGL (NetBSD): fix build
  * OpenGL (EGL): prefer surfaceless display
  * Add Armbian-unofficial detection (#1436)
  * Logo (Builtin): add Ultramarine Small
  * WM (OpenBSD): fix process enumeration
  * Display (Linux): clean up
  * WM: add support for fvwm (OpenBSD) and ctwm (NetBSD)
  * Scripts: fix typo
  * OpenGL (Linux): suppress IO
  * CPU (ARM): add more apple cores
  * CPU (Linux): detect Virtualized Apple Silicon
  * Doc: update changelog [ci skip]
  * Logo (Builtin): add Serpent OS
  * JsonSchema: fix typo
  * OS (Linux): detect Linux Lite
  * JsonSchema: add documentation of format args
  * Fastfetch: add `-h format-json`
  * Global: refactor code of `-h &lt;module&gt;-format`
  * Host: silence compiler warnings
  * Host (Sun): fix build
  * Host: detect mac model in FreeBSD &amp; Windows
  * Edid: use screen size in DTD if make sense
  * Host (Linux): report mac product name
  * Wifi (Linux): fix bssid formatting
  * Logo: randomly select one if the logo source expands to multiple files
  * GPU (OpenBSD): fix `pci.ids` file location
  * Packaging: update debian stuff [ci skip]</changelog>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1735214400">- Update to version 2.33.0:
  * Release: v2.33.0
  * Doc: update changelog [ci skip]
  * Media (Linux): set player name manually for musikcube
  * Logo (Builtin): add GoralixOS
  * Media: make it able to print player info in custom format
  * Media (Linux): report player name
  * Vulkan (Android): hard code path of `libvulkan.so`, so that users don't need to install vulkan-loader wrapper of termux
  * Media (Linux): Fix #1461 (WIP)
  * Doc: update changelog [ci skip]
  * Logo (Builtin): add NurOS
  * Doc: add comments for running fastfetch in root
  * DiskIO (OpenBSD): remove debug output
  * PhysicalMemory: clean up garbage data
  * CPU (NetBSD): fix typo
  * Battery (OpenBSD): fix build
  * Battery (NetBSD): add support
  * Bluetooth (BSD): disable
  * CPU (NetBSD): trim CPU vendor
  * Brightness (NetBSD): don't error out if the screen idx isn't 0
  * Version (NetBSD): report sysname
  * CPU (NetBSD): support temp and frequency detection
  * SMBIOS (NetBSD): add more data
  * Battary (NetBSD): some basic investigation of acpi battery detection
  * Battery (OpenBSD): add support
  * Brightness (OpenBSD): add support
  * Brightness (NetBSD): add support for builtin display
  * Bluetooth (Windows): silence compiler warnings
  * CMake: Add a cmake option to make flashfetch target optional (#1455)
  * PhysicalDisk (Linux): fix interconnect type detection
  * Bluetooth (Linux): improve performance
  * TerminalShell (Android): ignore proot
  * Bluetooth (Windows): optimise
  * Bluetooth (macOS): don't report disconnected devices if `showDisconnected == false`
  * Bluetooth (Linux): improve performance when `showDisconnected == false`
  * BluetoothRadio (Linux): improve performance by reducing size of dbus response
  * FFlist: fix return value of `ffListPop`
  * OS (Linux): Refactor Armbian version detection and add support for ubuntu-based armbian detection (#1447)
  * Shell (Windows): use $POWERSHELL_VERSION if available</changelog>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1736596800">- Update to version 2.34.0:
  * Media (Linux): remove unused variables
  * Doc: update JSON schema [ci skip]
  * Processing (Windows): fix get current process
  * OpenGL (EGL): try GLES 2.0+; then fallback to 1.1 if failed
  * Release: v2.34.0
  * OpenGL (Android): enable support
  * OpenGL (Android): request GLES 2+
  * Battery (NetBSD): fix battery percentage detection
  * Packages (Linux): rename am-user to appman
  * Packages (Linux): remove possible final newlines in am config
  * General: don't suppress the output of `preRun`
  * Packages (Linux): support am-user
  * WMDE: detect Sway by env variables
  * CPU (Android): check for MTK D9X00 SOCs
  * feat: Add Rhino Linux ASCII (#1487)
  * CMake (Android): set rpath for system Android libs
  * Sound: detect platform API
  * Processing (Windows): early return if `OpenProcess` failed
  * Logo (Builtin): add snigdhaos ascii (#1485)
  * fixing fastfetch wrong colors for xray_os logo (#1486)
  * Doc: update changelog [ci skip]
  * CI (Linux): add Linux ppc64le platform (#1484)
  * CPU (Linux): fix var content was unexpectedly modified
  * OS: prefer pretty names
  * CPU: fix core count output in multi-package platforms
  * CPU (Linux): detect TZ temp if CPU temp is not available
  * Packages (macOS): remove redundant tokens
  * Logo (Builtin): add the Lubuntu logo (#1481)
  * Doc: update README [ci skip]
  * FFstrbuf: improve performance of copying static strings
  * Terminal (Linux): fix detection of `pk-command-not-found`
  * TerminalShell (Linux): relax detection of terminals in NixOS
  * Doc: update README.md
  * Logo (Image): mark ghostty supports kitty image protocol
  * TerminalSize (Linux): enable fast path when stdout is redirected.
  * WM (Linux): detect WM version
  * WM (Linux): add sway version detection
  * Terminal (macOS): improve performance of kitty version
  * WM (Windows): detect version of DWM
  * WM (Linux): don't crash if no wm is detected
  * WM (macOS): add WindowServer version detection
  * WM: report version field in custom and JSON output
  * WM: Add support for detecting window manager versions, add support for Hyprland version (#1472)
  * Logo (Image): add `--kitty-icat`; honor `--logo-height` if set
  * Logo (Image): support generate image data via `kitten icat`
  * Revert "GPU: support detection by EGLext"
  * Brightness (FreeBSD): fix backlight name detection
  * TerminalFont (macOS): fix ghostty font detection; default to `JetBrains Mono`
  * Platform (Linux): fix exe path detection (#1468)
  * Bluetooth (DragonFly): disable module to fix build
  * GPU (EGLext): fix build on old systems
  * TerminalFont: support Ghostty
  * GPU: rename `ffGetGPUVendorString` to `ffGPUGetVendorString`
  * GPU: support detection by EGLext
  * Bluetooth (FreeBSD): add support (not tested)
  * CI: update *BSD versions
  * Host (macOS): fix thunderbolt version of new MBPs
  * Packaging: update debian stuff [ci skip]</changelog>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1736769600">- Update to version 2.34.1:
  * Sound: fix a memleak
  * Chore: fix spelling
  * CPU (BSD): improve base freq detection
  * Release: v2.34.1
  * fix(logo): Rename *_LOGO_SMARTOS to *_LOGO_SNIGDHAOS (#1502)
  * Logo (Builtin): add Oreon
  * Logo (Builtin): add HeliumOS
  * Memory (NetBSD): change formula to be consistant with other systems
  * Memory (OpenBSD): update formula to be consistant with other systems
  * Logo (Builtin): add netbsd_small
  * CI: fix build
  * DisplayServer (Linux): upgrade wayland protocol `kde-output-device-v2`
  * DisplayServer (Linux): check HDR support with `xx_color_manager_v4_interface` (WIP)
  * Media (Linux): use file name as media name if song title is not available
  * CPU (FreeBSD): bind process to the first 2 cores
  * chore: remove unnecessary NULL checks
  * TerminalFont (macOS): fix Ghostty termfont detection
  * GPU: set GPU vendor string when using OpenGL backend
  * Packaging: update debian stuff [ci skip]</changelog>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1737892800">- Update to version 2.35.0:
  * Thread: optimise locking (unused though)
  * CPU (Linux): add comments
  * Release: v2.35.0
  * PhysicalDisk: change temp range to 50-70 °C
  * Doc: update changelog again [ci skip]
  * Doc: update changelog [ci skip]
  * Doc: update json_schema [ci skip]
  * Doc: update changelog [ci skip]
  * Disk / Users: support duration printing in custom format
  * Doc: update changelog
  * CPU (Android): add QS8E for Galaxy
  * CMake: add option `-DCUSTOM_LSB_RELEASE_PATH`
  * OS (Linux): acquire more os info from lsb-release if missing from os-release
  * Logo (Builtin): fix more escape problems
  * Logo (Builtin): fix OpenBSD &amp; OpenBSD_small
  * Logo (Builtin): Add KDE Linux logo (#1523)
  * CPU (Android): detect new QS8E
  * CPU (Linux): detect SOC name on RISCV
  * Doc: update changelog [ci skip]
  * Presets: fix percentage number printing in examples/20 [ci skip]
  * Disk (NetBSD): silence compiler warnings
  * Doc: update feature_request issue template
  * Display (Linux): return reason if errored
  * Packages: fix file type check
  * Packages (SunOS): fix building
  * Packages: add pkgsrc; code refactor
  * Doc: update issue templates [ci skip]
  * CI: add linux-armv6
  * OpenGL: suppress output of EGL again
  * Doc: update more issue templates [ci skip]
  * Doc: split bug report issue template into smaller parts [ci skip]
  * CPU (Linux): query SOC name in cpuinfo for aarch64
  * TerminalShell (Linux): ignore proot
  * Logo (Builtin): update netbsd small
  * Logo (Builtin): add Arch Old
  * Chore: forbid using of VLAs
  * Packaging: update debian stuff [ci skip]</changelog>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1739448000">- Update to version 2.36.1:
  * Release: v2.36.1
  * CI: fix typo
  * CMake (Haiku): set `_GNU_SOURCE`
  * Logo (Builtin): fix Chimera Linux distro name to match ID (#1554)
  * Logo (Builtin): correct shape of ALT Linux (#1553)
  * CI: build with chafa &amp; ddcutil (aarch64)
  * CI: update artifact names of armv6l and armv7l
  * Doc: update readme
  * CI (Linux): use native aarch64 runner
  * CI (NetBSD): update OS version to 10.1
  * Packaging: update debian stuff [ci skip]
  * CI: add linux-s390x
  * CPU: remove useless `w/ Radeon 780M Graphics`
  * Terminal (Linux): improve performance of Tilix version detection
  * Release: v2.36.0
  * OpenGL (Haiku): enable support
  * Format: support syntax of `{$ENV_VAR}` in custom format
  * Logo (Builtin): KDE -&gt; KDE Neon
  * Doc: update changelog [ci skip]
  * OS (Linux): combine all armbian variants (#1547)
  * CPU (Linux): loosely detect cpu name of unknown platform
  * CPU (Linux): add cpu name detection for s390x
  * Display: capitalize `{type}`'s output (#1543)
  * Logo (Builtin): split `ID_LIKE` before using
  * CPU (Linux): support physical core count and package count detection on loongarch
  * Logo (Builtin): update some distro names
  * Logo (Builtin): simplify RebornOS
  * Logo (Builtin): fix color of Haiku in light mode
  * Shell (OpenBSD): trim `-` for login shells
  * CPU (Linux): detect for `model name` on unknown platform
  * Doc: update license
  * CMake (Haiku): fix build
  * Processing (Unix): better `pipe2(2)` existance check
  * Camera (macOS): make fastfetch compiled on newer macOS versions runs on older ones
  * GPU (macOS): use `recommendedMaxWorkingSetSize` as total GPU mem size
  * GPU (Nvidia): fall back to `nvmlDeviceGetMemoryInfo` if `nvmlDeviceGetMemoryInfo_v2` isn't supported
  * Temps (macOS): support M4x
  * Packaging: update debian stuff [ci skip]
  * Logo (Builtin): remove left padding of filotimo
  * Logo (Builtin): add filotimo logo (#1535)
  * Logo (Builtin): add Nexa Linux logo (#1539)
  * Chore: use `ffStrEquals` instead of `strcmp`
  * CMake (Haiku): fix an invalid file name
  * Chore: fix typo
  * Haiku: minimal implementation (#1538)
  * Logo (Builtin): change arch_old logo colours to be more accurate to the actual original logo.
  * Disk (BSD): silence compiler warnings
  * CMake (OpenBSD): remove pulseaudio detection
  * Sound (NetBSD): use kernel APIs instead of the OSS wrapper
  * CPU (Linux): fix build on PPC
  * Sound (OpenBSD): Use sndio instead of pulseaudio
  * CPU (Linux): rework cpuinfo parsing
  * Sound (NetBSD): don't assume readlink reports file name only
  * Sound (NetBSD): use OSS instead of pulseaudio
  * Sound (FreeBSD): report OSS ABI version</changelog>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1740052800">- Update to version 2.37.0:
  * Doc: fix typo in changelog [ci skip]
  * Release: v2.37.0
  * OS (Haiku): calcuate OS version
  * Version: report more CPU arches
  * OS (Haiku): report pre version as `-`
  * CPU (NetBSD): support non-intel CPUs
  * CMake (Haiku): enable more optional dependencies
  * OS (Haiku): detect OS beta version
  * Processing (Haiku): fix exe detection
  * GPU (Haiku): silence warnings
  * Haiku: fix building
  * Doc: update changelog [ci skip]
  * Packages (Haiku): rename package manager name to `hpkg`
  * PhysicalDisk (Haiku): fix drive size calcuation
  * Disk (Haiku): report all partitions
  * Shell (Haiku): fix arg0 detection
  * IO (Haiku): access `/path/to/file/` doesn't work. Work around it
  * LocalIP: fix `--localip-default-route-only false not working with --gen-config`
  * Bios (Haiku): report BIOS type
  * Terminal (Haiku): detect terminal version
  * PhysicalDisk (Haiku): fix SCSI drive detection
  * OpenGL (Haiku): report platform API
  * Smbios: add comments about UEFI systems [ci skip]
  * OpenGL (Haiku): add support
  * Chore: remove unused `#include`s
  * GPU: add missing variable inits
  * Bluetooth (Haiku): suppress debug output of system API
  * PhysicalDisk (Haiku): report drive type
  * Presets: print keyboard &amp; mouse in all.jsonc
  * Bluetooth (Haiku): WIP
  * Gamepad (Haiku): enable
  * PhysicalDisk (Haiku): add support
  * CPUUsage (Haiku): add support
  * Gamepad (Haiku): add support
  * Disk (Haiku): code cleanup; honor `option-&gt;folders`
  * Mouse / Keyboard (Haiku): code cleanup; ignore disabled devices
  * NetIO (Haiku): code cleanup
  * NetIO (Haiku): add support
  * Keyboard (Haiku): add support
  * Mouse (Haiku): add support
  * Sound (Haiku): fix runtime error getting mute status
  * Smbios: don't try to scan memory multiple times
  * Revert "Host (Haiku): add debug log"
  * Smbios (NetBSD): add support
  * Sound (Haiku): Init variables unconditionally; fix mute handling
  * InitSystem (Haiku): add support
  * Sound (Haiku): add support
  * Haiku: 32bit fixes
  * Host (Haiku): add debug log
  * Terminal (Haiku): fix konsole version detection
  * Chore (Haiku): silence compiler warnings
  * Smbios (Haiku): add support; enable related modules
  * StringUtils: fix a possible segfault
  * PhysicalMemory: fix `--format json` printing
  * Sound: properly round percent values
  * Weather: honor `display.temp.unit`
  * Battery (Haiku): fix capacity calculation
  * CI: enable `-DENABLE_EMBEDDED_AMDGPUIDS=On`
  * Battery (Haiku): add support (untested)
  * Battery (Haiku): add stub file
  * Logo (Builtin): simplify haiku; add haiku2 from neofetch
  * Uptime (Haiku): silence compiler warnings
  * InitSystem (Haiku): enable support
  * Processing (Haiku): support exe path detection
  * GPU (Haiku): use system API to fetch PCI devices
  * GPU: support embedding amdgpu.ids into fastfetch
  * GPU (Haiku): change the path of pci.ids to hwdata
  * TerminalFont (Haiku): support Haiku Terminal
  * Terminal (Haiku): add pretty name for Haiku Terminal
  * GPU (Haiku): add pci.ids file path
  * Doc: update README.md (#1557) [ci skip]
  * Scripts: download pci.ids by cmake; remove `python-requests` dependency
  * Logo (Builtin): update Rosa linux logo (#1559)
  * OS: remove option `--escape-bedrock`
  * Media (Haiku): enable support
  * Terminal (Haiku): add basic support
  * Display (Haiku): code cleanup; detect manufacture date
  * OS (Haiku): silence warnings
  * Media (Haiku): enable support
  * Sound (Haiku): add stub file
  * Disk (Haiku): add support
  * CPU (Haiku): add support
  * CMake (Haiku): add more optional dependencies
  * Display (Haiku): trim monitor name
  * GPU (Haiku): add support
  * GPU (macOS): fix build error in MacOS 10.13 (#1556)
  * Packaging: update debian stuff [ci skip]</changelog>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1741435200">- Update to version 2.38.0:
  * CI: try fixing CI failures
  * Release: v2.38.0
  * Chore: update image logo
  * Camera (macOS): silence compiler warnings
  * Camera (macOS): fix crashing on old macOS version
  * CI (macOS): remove CodeQL
  * Logo (Builtin): Add Shebang Linux (#1592)
  * Doc: update supported platforms
  * Logo (Builtin): update fastfetch logo to match the svg one
  * Chore (Windows): set exe file icon to fastfetch logo
  * Logo: add fastfetch logo
  * Doc: fix `SI` size prefix description
  * Doc: update changelog [ci skip]
  * Camera (macOS): try fixing segfault in macOS 10.15
  * Brightness: detect &amp; print screen type
  * Terminal (Linux): support termite version detection
  * TerminalFont (Linux): support termite terminal (#1588)
  * JsonSchema: update format json [ci skip]
  * Packages (Linux): Add support for Pisi Linux (#1580)
  * GPU: support percentage num &amp; bar in custom format
  * Logo (Builtin): simplify
  * Logo (Builtin): Added Bedrock Linux small ASCII logo (#1582)
  * Bootmgr (Linux): fix secure boot testing
  * Logo (Builtin): simplify os names
  * OS (Linux): fix VanillaOS detection
  * Builtin (Logo): simplify linuxmint handling
  * Logo (Builtin): add opensuse-tumbleweed_small
  * Disk: add `{mountpoint}` and `{mount-from}` in custom output format
  * Presets: fix OS key in examples/25
  * DateTime (Windows): fix day-pretty output in custom format
  * Presets: add a new example
  * OS: allow customize key format with kernel name and distro name
  * Battery: add missing `{icon}` in key format
  * Chassis (macOS): add support
  * JsonSchema: update format schema
  * Battery (Haiku): handle empty slots
  * Packaging: update debian stuff [ci skip]</changelog>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1742558400">- Update to version 2.39.1:
  * Release: v2.39.1
  * Networking: request HTTP/1.0, as we don't support chunked response
  * Packaging: update debian stuff [ci skip]
  * Packages (Linux): add pkgsrc detection
  * Logo (Builtin): add NetBSD2
  * Display (Linux): fix the error check for ffReadFileData (#1622)
  * Release: v2.39.0
  * Networking (FreeBSD): support fast path without TFO enabled
  * Networking: don't enable TFO if server doesn't support it
  * Networking: don't enable HTTP compression if server doesn't support it
  * Networking (Linux): remove unnecessary variables
  * Networking (Linux): don't generate SIGPIPE
  * Networking (Windows): more verbose log
  * Networking (macOS): support TFO
  * Networking (BSD): support TCP_FASTOPEN
  * Completion (Bash): Use `fastfetch --help-raw` for auto-completion
  * Networking (Windows): print readable error message
  * Networking (Windows): fix libz loading; use TCP_FASTOPEN if available
  * Networking: silence compiler warnings
  * Networking (Linux): handle a case when `sendto()` reports `EINPROGRESS`
  * Networking: move files to a sub folder
  * Networking (Windows): apply the same optimizations of *nix's
  * Netif (Windows): use `GetIpForwardTable2` to support IPv6
  * Networking (Linux): improve performance by TFO and response compression
  * Netif (DragonFly): use code of OpenBSD
  * NetIF (OpenBSD): fix default route detection
  * Doc: update changelog [ci skip]
  * Wifi (macOS): remove usage of Apple80211
  * Completions (Bash): remove `--lib-*`
  * OpenGL: drop OSMesa backend
  * Logo (Builtin): add Bredos
  * Logo (Builtin): Change FoxOS to WolfOS (#1534)
  * Terminal (Windows): detect warp version
  * Wifi (macOS): improve performance of SSID detection on Sequoia
  * Packaging: update debian stuff [ci skip]
  * Kmod (NetBSD): add `__attribute__((__packed__))` to ensure memory layout
  * CI: remove unnecessary deps
  * Logo (Builtin): Add Common Torizon OS as a variant
  * Display (Windows): prefer `DISPLAYCONFIG_DEVICE_INFO_GET_ADVANCED_COLOR_INFO_2`
  * Kmod (NetBSD): add support</changelog>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1743681600">- Update to version 2.40.0:
  * WM (Linux): fix https://github.com/fastfetch-cli/fastfetch/issues/1657#issuecomment-2772749780
  * WM (Linux): query Hyprland version from hyprland dev header
  * Binary: add comments
  * WM (Linux): correctly fall back to calling `wm --version` if `ffBinaryExtractStrings` fails
  * CI: remove Dragonfly BSD
  * WM (Linux): fix (?) Hyprland version detection
  * Release: v2.40.0
  * Uptime: round seconds to the nearest minute
  * DisplayServer (Linux): silence compiler errors
  * Util (Windows): fix mem leaks
  * Util (Windows): fix possible errors in `Unicode.c`
  * Util (Linux): fix executable file check
  * FFlist: use `uint8_t` instead of `char` to store raw data
  * Threading: fix timeout calcuation
  * Netif (Linux): support default route detection for ipv6
  * Wifi: fix code smells
  * PhysicalMemory (Linux): code refactor
  * Users (Linux): support IPv6 client addr
  * Users (Windows): support IPv6 client IP
  * Uptime (NetBSD): fix boot time calcuation
  * TPM (macOS): add support
  * InitSystem (Haiku): set pid=0 if fails to detect init pid
  * Doc: update changelog [ci skip]
  * Revert "CI: build in debug mode"
  * Swap (Windows): support multiple paging files
  * Swap (OpenBSD): fix mem leaks
  * Swap: fix code smells
  * Sound: fix typo and mem leaks
  * Doc: update changelog [ci skip]
  * Chore (Windows): silense compiler warnings
  * fastfetch: load config from fastfetch binary path
  * Logo (Ascii): Change Nexa Linux logo (#1653)
  * Logo (Builtin): change name of  Xray-OS
  * Terminal (Windows): fix file version detection
  * CI: build in debug mode
  * GPU (Windows): fix max frequency detection for AMD ODN
  * GPU (Windows): use ODN as OD7; fix `ADL2_Overdrive8_Current_Setting_Get` call and some other bugs
  * Doc: update changelog [ci skip]
  * TerminalFont (Windows): support Warp Terminal
  * GPU (Windows): try more OD funcs; add more verbose logs
  * Disk (macOS): silense compiler warnings
  * DNS (macOS): detect DNS entries by SystemConfiguration
  * DNS (Linux): add systemd-resolved support; add verbose logs
  * Media: fix code smells
  * Gamepad / Keyboard / Mouse (FreeBSD): break detection earlier
  * Keyboard (FreeBSD): fall back to KDGKBINFO if usbhid fails
  * Gamepad / Mouse / Keyboard (FreeBSD): fix memleaks
  * Host (Windows): fix build on WoA
  * GPU (Windows): actually use correct OD fns for recent AMD GPUs
  * GPU (Windows): add `OverdriveN` functions for AMD
  * GPU (Windows): fix `ADL2_Adapter_AdapterInfoX3_Get` result test
  * GPU (Windows): added verbose logs
  * Global: fix code smells
  * Host (macOS): add new models; fix an invalid model ID
  * Chore: fix code smell
  * Disk (SunOS): remove creation time detection support
  * Util/debug: add missing `#pragma once`
  * Separator: fix `outputColor` doesn't work when `length` is set
  * Chore: fix a lot code smell
  * LocalIP: change `{name}` to `{ifname}` in `--localip-key-format` for consistancy
  * GPU: fix code smell
  * GPU (General): fix GPU device type detection
  * Battery (NetBSD): report remaining time
  * Battery (Linux): fix critical state detection
  * Battery (macOS): fix manufacture date detection
  * GPU (macOS): fix code smell
  * CPU (Linux): fix CPU detection on some PPC platforms (#1640)
  * GPU (Windows): fix code smells
  * GPU: update JSON result structure; fix segfault and memleaks
  * GPU (Windows): support VMEM type detection via nvapi
  * GPU (Windows): rewrite implementation for AMD GPUs using ADL SDK
  * GPU (Windows): support memory type detection for Intel dGPUs
  * GPU: prepare for memory type &amp; shared memory usage detection
  * GPU (Windows): add display-library for future use
  * IO: don't suppress IO in debug mode
  * Bootmgr: report boot order
  * Smbios (OpenBSD): add comments for UEFI systems [ci skip]
  * Logo (Builtin): fix opensuse-tumbleweed_small
  * Wifi (Linux): add verbose logs
  * Wifi (DragonFly): fix building
  * Bootmgr (BSD): add support for OpenBSD and NetBSD
  * BIOS (OpenBSD): check bios type
  * Smbios: add verbose debug logs
  * Smbios (OpenBSD): add support for legency BIOS
  * util/debug: add missing headers
  * Wifi (FreeBSD): use ioctl to improve performance
  * Logo (Builtin): Change WiiLinuxNgx to more generic name (#1633)
  * Packaging: update debian stuff [ci skip]
  * Terminal (macOS): fix Warp Terminal pid detection
  * Presets: update examples/{24,26} [ci skip]</changelog>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1744372800">- Update to version 2.40.4:
  * Release: v2.40.4
  * Fastfetch: fix loading presets in `{exePath}/presets`
  * WM (Linux): remove `v` from Hyprland version
  * Logo (Image): mark kitty image protocol support for warp terminal on macOS
  * Release: v2.40.3
  * Fastfetch: fix loading example configs from presets directory
  * Release: v2.40.2
  * Doc: fix CI errors (2)
  * Doc: fix CI errors
  * Doc: migrate some help texts to Github Wiki pages
  * Doc: update documents
  * Doc: update README
  * Fastfetch: enforce `.jsonc` extension when loading config file
  * Logo (Image): default to kitty protocol in warp terminal
  * Release: v2.40.1
  * Logo: don't try to find files named `-`
  * IO: remove fast path of `ffPathExists`, which causes too many problems
  * TPM (macOS): fix compiling error on old system
  * Packaging: update debian stuff [ci skip]</changelog>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1749729600">- Update to version 2.45.0:
  * Release: v2.45.0
  * Swap (Haiku): detect detailed info
  * Chore (Haiku): don't use hard-coded page size
  * Disk (BSD): silence compiler warnings
  * Swap (DragonFly): add support
  * Swap (SunOS): detect detailed info
  * Swap (OpenBSD): detect detailed info
  * Swap (Linux): add fallback for Android
  * Swap (Linux): support detailed info
  * Swap (FreeBSD): detect detailed info
  * Swap (macOS): detect detailed info
  * Swap: support separated output
  * Swap (Windows): detect detailed info
  * Smbios (DragonFly): acquire SMBIOS info from `/dev/mem`
  * DE (DragonFly): fix build
  * Swap (Linux): use `/proc/swaps`
  * CI (Linux): fix musl build
  * CI (Linux): add missing deps for musl
  * Logo (Builtin): Update logo for Xenia Linux (#1783)
  * Disk (BSD): don't ignore sshfs
  * Packages (Linux): fix dnf package count detection (v2)
  * Packages (Linux): fix dnf package count detection
  * CI: add back disabled DFBSD
  * CMake: fix build of FreeBSD
  * Disk (Linux): don't ignore sshfs
  * CI (Haiku): add build
  * CMake: build FreeBSD `pkg` package
  * Logo: support `"type": "command-raw"`
  * Chore: tidy
  * Fix typo, 15,2 isn't a real mac model number
  * DE (FreeBSD): support KDE version detection
  * Logo (Builtin): add void2
  * Logo (Builtin): update default colors of voidlinux
  * Logo (Builtin): add rhel_small
  * WM: support I3 version detection
  * WM: support FVWM version detection
  * WM: support CTWM version detection
  * Logo (Builtin): add Starry Linux
  * Chore: code cleanup
  * GPU: add more GPU vendors
  * JsonSchema: update `&lt;module&gt;Format` [ci skip]
  * Packages: split code
  * Packaging: update debian stuff [ci skip]
  * Host (Android): add detection for OnePlus market name
  * Release: v2.44.0
  * DisplayServer (Linux): fix errors on KDE beta
  * Disk: add `--disk-hide-fs`
  * Disk: rename `hiddenFolder` to `hideFolder`; add docs
  * Disk: add `hiddenFolders` (2)
  * Logo (Builtin): Add UBLinux Logo (#1764)
  * Disk: add option `--disk-hidden-folders`
  * Disk (Linux): don't hard code hidden mount points
  * TerminalShell (Linux): ignore `script`
  * Logo (Builtin): Add Kylin Logo (Remove ANSI codes) (#1760)
  * Stat: use `ESC 7/8` instead of `CSI s/u`
  * Doc: Add information of where to find example config files (#1759) [ci skip]
  * fish complete: add `--logo-color-[1-9]` completion (#1754)
  * Packaging: update debian stuff [ci skip]
  * CI: silence spell check errors
  * GPU (Linux): embed asahi_drm.h
  * 3rdparty (yyjson): upgrade to 0.11.1
  * PhysicalDisk: trim white spaces of serial
  * Doc: update changelog
  * Media (Windows): detect player name (UMP apps only)
  * Doc: update changelog
  * GPU (AMD): remove usage of `ADL2_Adapter_VRAMUsage_Get`
  * Release: v2.43.0
  * Revert "Vulkan: use `VK_API_VERSION_*` instead of deprecated `VK_VERSION_*`"
  * Sound (macOS): report the volume of muted device as 0%
  * Sound: don't show 255 in custom format
  * Vulkan: use `VK_API_VERSION_*` instead of deprecated `VK_VERSION_*`
  * GPU (Linux): fix CI errors
  * GPU (Linux): detect core usage when libamdgpu is not available
  * GPU (Linux): detect VRAM type of AMD GPUs
  * Smbios: fix transitive include for `loff_t` (#1746)
  * GPU (AMD): seems `ADL2_Adapter_VRAMUsage_Get` reports system mem usage only, not full memory usage
  * GPU (AMD): more verbose logs
  * GPU: don't hide unknown type of GPUs by default
  * Smbios: discard usless values
  * Media (Linux): fix duplicated playback status
  * GPU (Windows): fix incorrect used shared memory size
  * Memory / Swap: always initialize local variables
  * GPU: optionally hide unknown GPUs (#1742)
  * Logo (Builtin): add Hydra Framework logo (#1740)
  * Builtin (Logo): new AthenaOS logo
  * Logo (Builtin): `sd '\$\{c(\d)\}' '$$$1' *`
  * TerminalShell: use ffBinaryExtractStrings result as possible (#1739)
  * DisplayServer (Linux): fix xcb_connect error handling (#1735)
  * 3rdparty: upgrade yyjson to 0.11.0
  * Media (macOS): support macOS 15.4
  * GPU (Linux): fix asahi linux support again
  * Disk (Linux): fix possible bug on 32-bit platforms
  * CPU (FreeBSD): simplify physical core count detection
  * CPU (SunOS): support physical core count and package count detection
  * Display: use height to calculate scale factor
  * CPU (Windows): always use `XxxW`
  * Global: Improve `ARRAY_SIZE` macro using `__is_array`
  * Parsing: silence compiler warnings
  * Packaging: update debian stuff [ci skip]
  * Wifi (NetBSD): fix the ambiguous comment
  * Wifi (BSD): correctly prioritize Wi-Fi protocol detection
  * Release: v2.42.0
  * BIOS: normalize the module name
  * Uptime: fix non-normalized time being shown
  * Global: use ARRAY_SIZE (#1718)
  * Bluetooth (Linux): silence an unused variable warning (#1717)
  * Platform: fix a memory leak (#1716)
  * Doc: update changelog [ci skip]
  * Logo (Chafa): fix setting `chafa.symbols`
  * Camera (OpenBSD): add support
  * CPU (OpenBSD): fix CPU temperature detection
  * Refactor: inline printError into ffPrintError and remove unused static helper
  * Wifi (FreeBSD): fix possible mem leaks
  * Wifi (NetBSD): add support
  * Wifi (OpenBSD): fix file name
  * CPU (NetBSD): add one more method to detect CPU frequency
  * CPU (SunOS): detect CPU temp
  * Logo (Builtin): Add Codex Linux support (#1701)
  * Logo (Builtin): remove GoralixOS
  * Logo (Builtin): add Aurora
  * PhysicalDisk (Linux): don't detect disk type of virtual disks
  * T2/SDE: upstreaming downstream's logo change (#1695)
  * Color: support #RGB and #RRGGBB
  * Packaging: update debian stuff [ci skip]
  * Processing (Windows): fix macro name `__aarch64__`
  * Chore: remove Chinese comments [ci skip]
  * CI (Linux): enable chafa on Linux aarch64
  * CI (Linux): bump GH runner for linux-amd64
  * Release: v2.41.0
  * Bluetooth (NetBSD): add base implementation
  * Doc: add installation instructions for pkgsrc [ci skip]
  * Uptime (Windows): use `QueryUnbiasedInterruptTime`
  * CMake: use mincore on WoA
  * Processing (Windows): use `GetOverlappedResultEx` on WoA
  * CI (Windows): add WoA
  * GPU (Linux): add temp detection for Intel GPU
  * NetIO (Linux): use `openat`
  * Logo (Builtin): Add 2 more Alpine logos (#1687)
  * CPU (Linux): fix build
  * Chore: simplify `fastfetch.h`
  * Wifi (FreeBSD): remove unused sys headers
  * CPU (Linux): add new ARM part numbers
  * Wifi (OpenBSD): add support
  * Doc: add comments about displaying image logo on Windows [ci skip]
  * WM (FreeBSD): enable Hyprland version detection
  * CPU (Windows): use PDH to detect thermal temp
  * Logo (Builtin): Add support for anduinos (#1684)
  * Platform: retrieve full user name
  * Fastfetch: fix loading presets in `{exePath}/presets`
  * IO (Windows): support `~` expanding
  * Chore: update comment
  * Util (Windows): use native win32 functions
  * WM (Linux): remove `v` from Hyprland version
  * Packages (Linux): add soar packages count (#1531)
  * PhysicalDisk (Linux): add more disk types
  * PhysicalDisk (Linux): don't detect disk type for virtual disks
  * Revert "CPU (FreeBSD): remove using of freq_levels"
  * CPU (FreeBSD): don't assume one SMT group has only two threads
  * CPU (Linux): detect physical core count on non-x86 platforms</changelog>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1751112000">- Update to version 2.46.0:
  * Doc: update changelog [ci skip]
  * Logo (Builtin): simplify kali linux
  * Logo (Builtin): add Kalpa Desktop
  * Release: v2.46.0
  * Doc: update `help.json`
  * Logo (Builtin): rename hydra framework to hydrapwk
  * Chore: code cleanups
  * Global: add missing O_CLOEXEC to open()
  * GPU (Linux): fix an issue which vram_usage is bigger t han vram_visible
  * GPU (Linux): detect shared vram usage of AMD GPU
  * GPU (Linux): correctly call radeon driver
  * GPU (FreeBSD): fix mem leaks
  * GPU (Windows): fix build
  * GPU (Linux): fix building without features
  * GPU (Linux / FreeBSD): add DRM detection support for old radeon driver
  * GPU (Linux / FreeBSD): unifies DRM related code and code clean up
  * GPU (FreeBSD): support detection by DRM [wip]
  * WM (FreeBSD): fix Hyprland version detection
  * GPU (macOS): detect Metal 4 support
  * OS (macOS): seems macOS 26 Beta 1 still reports itself as macOS 16. Honor it.
  * CI: upgrade OpenBSD version
  * CI: split amd64 and arm64 builds
  * Kmod: remove Chinese comments [ci skip]
  * Board (macOS): detect board-id if available
  * Logo (Builtin): add GhostFreak
  * Logo (Builtin): added AnushOS (#1806)
  * Global: set `SetErrorMode(SEM_FAILCRITICALERRORS)` globally
  * Logo (Builtin): Add HarmonyOS support (#1804)
  * Packages (OpenBSD): fix counting by ignoring hidden folders
  * CPU (NetBSD): properly support PowerPC (#1802)
  * WM (MacOS): Added Aerospace WM detection
  * DE (macOS): report Liquid Glass on macOS 26+
  * OS (MacOS): add macOS 26 Tahoe
  * Logo (Builtin): detect and add TrueNAS Scale
  * OS (Linux): detect Raspberry Pi OS
  * Disk (Linux): hide `/boot/firmware` by default
  * Logo (Builtin): add xenia_old; update colors of xenia
  * TerminalFont: support rio terminal emulator (#1789)
  * JsonSchema: document `swap.separate`
  * CPU (Windows): use `perflib.h` instead of `pdh.h` for querying CPU temp
  * Logo (Builtin): improve colors of bedrock_small
  * Host (Linux): detect Linux Binary Compatibility on FreeBSD
  * Host (Linux): more detailed info of WSL
  * Logo (Builtin): Add Fedora2_small (#1785)
  * Packaging: update debian stuff [ci skip]</changelog>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1752840000">- Update to version 2.48.1:
  * Release: v2.48.1
  * WM (Linux): fix a copy-paste error
  * Modules: don't report errors when `condition` key is set
  * Packages: add new option `--packages-combined`
  * JsonConfig: add `modules[n].condition` to run modules conditionally on different platforms
  * Version: replace `WIN32` with `Windows` and `Darwin` with `macOS`
  * Processing (*nix): fix compiling on Android 7
  * Processing (Windows): redirect unused std handles to `NUL` to avoid potential errors
  * Processing (*nix): use traditional `fork-exec` on Android and OpenBSD
  * Packaging: update debian stuff [ci skip]
  * WM (Linux): add Openbox version detection
  * Chore: silense compiler warnings
  * Doc: optimize README; fix typo
  * Release: v2.48.0
  * Logo: partially revert c5c0e54
  * Separator: remove `formatArgs`
  * Display: add option `--fraction-ndigits`
  * Uptime / Users: add `years`, `days-of-year` and `year-fraction`
  * Chore (Linux): silience compiler warnings
  * JsonSchema: update `xxxFormat` [ci skip]
  * Disk: add keys `years`, `days-of-year` and `years-fraction`
  * Logo (Builtin): rename ada to xray_os (#1845)
  * CMake: reconfigure after adding / removing logos
  * README: document how to run multiple modules on command line [ci skip]
  * Processing (Linux): cache the index of `$LANG`
  * README: add DeepWiki badge [ci skip]
  * GPU (Windows): fix compiling on x86-32
  * Logo: don't print builtin logo if the provided logo source cannot be found
  * Logo: load `.raw` files as raw image file
  * Logo: don't load text files as image file
  * Logo: don't parse file paths as builtin logo name
  * GPU (Windows): more method to detect device name
  * GPU (Windows): detect GPU frequency by default
  * GPU (Intel): prefer matching GPU with bus id
  * Packages (Linux): clean up nix user package detection
  * Packages (Linux): add /etc/profiles/per-user detection for nix user packages
  * GPU (Windows): ignore invalid temps
  * GPU (Windows): greatly improve performance of GPU temp detection
  * Logo (Builtin): add AxOS
  * Logo (Builtin): add the Minimal System logo (#1837)
  * Revert "GPU (macOS): update how integrated GPUs are detected"
  * CI (Haiku): Apply work-around for work directory
  * Sound (macOS): improve device id detection
  * Processing (Linux): use `posix_spawnp` for better performance
  * Chore (Linux): silence compiler warnings
  * GPU (Windows): use nvapi to detect GPU type
  * GPU (Windows): clean up
  * Chore (Windows): tidy
  * GPU (Windows): fix Win7 compatibility
  * GPU (Windows): new method to detect device type
  * GPU (Windows): add driver version fall back
  * CMake (Windows): remove `setupapi` dependency
  * Battery (Windows): use `CMAPI` instead of `SetupAPI`
  * GPU (Windows): use `CMAPI` instead of `SetupAPI`
  * Presets: add a new example
  * PhysicalDisk: unifying white space trimming
  * OS (Linux): detect fedora variants
  * Chore: Add a missing semicolon (#1828)
  * Packaging: update debian stuff [ci skip]
  * OS (Linux): remove duplicated code
  * Doc: update README [ci skip]
  * CMake: remove the unused option `ENABLE_CPUUSAGE_PERFLIB`
  * Release: v2.47.0
  * README
  * Logo (Builtin): always use `FG_DEFAULT` on title and keys
  * Logo (Builtin): fix colors of raw Linux logo
  * Logo (Builtin): fix colors of DragonFly
  * Revert "Logo (Builtin): `:%s/FG_WHITE/FG_DEFAULT/g`"
  * CPUUsage (Windows): detect perflib support dynamically based on OS version
  * OS (Linux): add support of Xubuntu
  * CPUUsage (Windows): disable `ENABLE_CPUUSAGE_PERFLIB` by default
  * CMake: fix typo
  * CPUUsage(Windows): add new method using Windows Performance Library
  * CMake (SunOS): drop pciaccess dependency
  * Chore (Windows): move `perflib_.h` to somewhere global
  * Terminal (Linux): ignore `init` and `systemd`
  * CpuUsage (Windows): refine KernelTime calculation by removing unused DPC and interrupt time
  * CpuUsage (Linux / BSD): include interrupt and softirq times in CPU usage calculations
  * IO: increase `PROC_FILE_BUFFSIZ` to avoid possible short reads
  * README: add the OpenBSD and DragonFly installation method [ci skip]
  * Media (macOS): support old macOS version
  * Media (macOS): simplify now playing handling
  * Logo (Builtin): `:%s/FG_WHITE/FG_DEFAULT/g`
  * Display (FreeBSD): silence a compiler warning
  * GPU (FreeBSD): fix compiling when libdrm is not available
  * OS (Linux): append version string for Ubuntu variants
  * GPU (OpenBSD): fix pci.ids file location
  * OS (macOS): force reporting 26 on macOS Tahoe
  * OS (Linux): improve RPIOS detection
  * OS (Linux): use `ffStrbufSetStatic` where applicatable
  * OS (Linux): clean up dietpi related code
  * OS (Linux): detect DietPi
  * CI (FreeBSD): run with 14.3
  * Sound (SunOS): rework; drop pulseaudio dependency
  * Shell (SunOS): ignore leading `-`
  * GPU (SunOS): simplify
  * PhysicalDisk (SunOS): rework; support more device types
  * PhysicalDisk (SunOS): add support
  * Logo (Builtin): use FG_DEFAULT instead of FG_WHITE
  * GPU (SunOS): rework GPU detection
  * Chore: remove useless semicolons
  * BIOS (SunOS): detect BIOS type
  * OS (macOS): remove useless code
  * Packaging: update debian stuff [ci skip]</changelog>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1754049600">- Update to version 2.49.0:
  * Battery / Uptime: update document of custom format
  * Battery: address copilot feedback
  * WM (Linux): fix a copy-paste error.
  * Release: v2.49.0
  * Doc: update readme
  * Percent: add option `--percent-width`
  * Uptime / Battery: add formatted duration string in custom format
  * Global: add new unit related options
  * DiskIO: fix wrong `/s` assignment in custom format
  * Packages (Windows): find scoop installation path by parsing scoop config file
  * Font (Linux): parse unicode escaped string stored by qt5ct
  * FFstrbuf: add function `ffStrbufAppendUtf32CodePoint`
  * GPU (Intel): read render engine temperature only
  * WM (Linux): add labwc version detection support
  * CPU (Android): make SOC detection more loose
  * CPU (Android): add more QSD SOCs
  * Disk: update default value of `hideFolders`
  * Packages (Windows): don't rely on the existance of `$SCOOP` when detecting scoop packages
  * Logo (Builtin): remove Evolinx
  * GPU (macOS): silence compiler warnings
  * Wifi (macOS): use `sudo wdutil info` on Tahoe
  * FFstrbuf: add function `ffStrbufSubstr`
  * Chore: add FF_C_NONNULL
  * Version: correct the variable name 'name' to 'project-name'
  * Users: correct the variable name 'session' to 'session-name'
  * LocalIP: cleanup printing code
  * LocalIP (Windows): fix link speed calcuation
  * LocalIP (Windows): ignore stopped interfaces
  * Netif (Windows): correct default route detection (v2)
  * JsonSchema: improve definitions of `colors` and `conditions` [ci skip]
  * CI (Haiku): remove work around
  * Editor: correct the variable name `full-path` to `path`
  * Wifi (Linux): fix interface status when the interface is up but not connected
  * Presets: improve `25.jsonc`; add verbose comments [ci skip]
  * Netif (Windows): fix default route detection when the default adapter is disabled
  * CI (NetBSD): remove opencl support to fix building
  * Packages (Linux): remove `qi` support
  * Packages (Linux): improve accuracy of flatpak count detection
  * Logo (Builtin): add Aeon
  * GPU (Linux): add GPU temp detection for nouveau driver
  * GPU (Linux): support advanced detection for nouveau driver</changelog>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1755518400">- Update to version 2.50.2:
  * Release: v2.50.2
  * LocalIP: refines default route detection and JSON output for local IPs
  * Netif (Linux): improves default route detection and error handling
  * Netif (Linux): add verbose logs
  * CI: adds default build type to CI environment
  * LocalIP (Linux): add verbose debug log
  * LocalIP (Linux): fixes incorrect return and ensures struct initialization
  * LocalIP: fix `showMac` does not honor `defaultRouteOnly`
  * FFstrbuf: wrap yyjson.h include in conditional
  * Packages (Linux): fixes Linglong detection by counting linglong layers (#1903)
  * Release: v2.50.1
  * Packages (Linux): fixes Linglong detection on Debian (#1899)
  * Percent: refactors bar color logic for clarity and consistency; update examples
  * Revert "Percent: fix a copy-paste error"
  * Packages (Android): fix building
  * Doc: update changelog [ci skip]
  * Doc: update changelog
  * Flashfetch: disable decimal digits in Disk module
  * Separator: honors FQDN settings in Title module
  * Doc: update changelog
  * Fastfetch: adds support for reading JSON config from stdin
  * Chore: removes undocumented flag `--load-config`
  * Doc: update changelog [ci skip]
  * Release: v2.50.0
  * Global: fixes `-ffast-math` compatibility
  * GPU (macOS): don't set `platformApi` to `Metal` when Metal API is not used
  * GPU (Windows): ignore software adapters; add verbose logs
  * Doc: update changelog [ci skip]
  * Cursor (macOS): improves color detection and rounding for cursor info
  * Logo (Builtin): add ObsidianOS (#1890)
  * Packages: unifies Nix package detection code
  * CI: upgrade to `actions/checkout@v5`
  * README: HomeBrew -&gt; Homebrew (#1891) [ci skip]
  * Doc: update README &amp; Changelog
  * OS (Linux): tidy
  * Revert "CPU (macOS): use CPUID for freq detection on Intel"
  * CI (Haiku): reduce errors when installing deps (hopefully)
  * CommandLine: add `--gen-config-full`
  * Presets: add an example
  * Percent: fix a copy-paste error
  * JsonSchema: remove unused properties [ci skip]
  * Doc: don't recommand Ubuntu PPA [ci skip]
  * OS (Linux): fix lliurex detection (#1882)
  * DisplayServer: merge `serverVender` into `wmProtocolName`
  * Display (Linux): show brand of Xserver in WM section (#1888)
  * Chore: remove unused functions
  * Netif (SunOS): work around a bug that fails to detect default route for IPv4
  * GPU (FreeBSD): fix gpu driver detection when DRM is used
  * CPU (macOS): use CPUID for freq detection on Intel
  * LocalIP (Linux): fix building
  * LocalIP (SunOS): add speed detection support
  * LocalIP (SunOS): support `isIPv6AddressPreferred`
  * LocalIP (SunOS): add more if flags
  * LocalIP (Linux): fix compiler warnings
  * Networking (SunOS): fix compiler warnings
  * Netif (SunOS): fix compiler warnings
  * LocalIP (BSD): fix compiling
  * Wifi: updates default WiFi percentage thresholds
  * LocalIP: improve preferred IPv6 address detection
  * Netif: unifies BSD netif handling
  * Netif (Haiku): add preferred source addr
  * NetIO (SunOS): fix build
  * LocalIP (BSD): fix building
  * Netif: refactor API for dual-stack route detection
  * Display: fix invalid `size.maxPrefix` default value in generated config file
  * Netif (BSD): split different implementations
  * LocalIP: consider preferred source address when retrieving default route (#1883)
  * LocalIP (Windows): show only preferred IP when `showAllIPs` is not set
  * Chore: fix building on Windows
  * JsonConfig: make all non-module keys case-sensitive
  * JsonConfig: write all flags when generating config file
  * Doc: remove command line flags of modules
  * Modules: refactor module option handling for static allocation
  * Modules: export module info
  * Modules: add init and destroy option callbacks to module info
  * Disk (Linux): ignore Bedrock Linux subvolumes
  * OS (Linux): don't detect Bedrock linux when ran restricted
  * JsonSchema: Improves JSON schema enums with oneOf objects containing descriptive explanations for allowed values
  * GPU: support `"hideType": null`
  * Display: add `compactMode: null`; improve json schema
  * Modules: remove all `parseCommandOptions` and related stuff
  * JsonSchema: small improvements
  * Display: allow `"compactType": null`; improve json schema
  * Disk: add missing JSON config options
  * Percent: silense compiler warnings
  * JsonConfig: refactor JSON key handling to improve safety and consistency
  * JsonConfig: refactor string buffer JSON handling for robustness
  * Doc: update changelog; fix typo
  * Presets: add new config; fix old config
  * Option: fix a possible null reference segfault
  * Doc: update changelog [ci skip]
  * Bar: refactor config to use nested objects and deprecates old fields
  * Bar: add customizable bar color options for percentage bars
  * Bar: add configurable elapsed bar borders for percent bars
  * Wifi (macOS): disable using of `ipconfig` on 15.6 too
  * Chore: remove sensitive data [ci skip]
  * Changelog: fix typo [ci skip]
  * Packaging: update debian stuff [ci skip]</changelog>
  <changelog author="egor.kuznetsov.26@gmail.com" date="1759060800">- Update to version 2.53.0:
  * CI: fix release action
  * Packaging: updates debian stuff [ci skip]
  * Release: v2.53.0
  * CPU (Android): adds support for new Qualcomm and MediaTek SoC codes
  * Doc: update changelog [ci skip]
  * CPU (Linux): adds support for new ARM C1 series CPU part IDs
  * Zpool: increase libzfs so version to 6
  * CI: upgrades runner of intel macOS
  * CPU (Windows): refines ARMv8.4-A detection to require LSE2
  * OS (Linux): Better Ubuntu flavor detection
  * Wifi (macOS): add (B)SSID detection back for Tohoe 26.0
  * TerminalFont: improve ghostty with command `ghostty +show-config`
  * Logo (Builtin): update ObsidianOS logo (#1970)
  * Disk: refactors mountpoint matching to use shared string utilities
  * CommandOption: refactors code with `ffStrbufSeparatedContainIgnCaseS`
  * FFstrbuf: adds more functions to match separated strings
  * Gamepad / Keyboard / Mouse: improves device error handling and memory cleanup
  * Gamepad / Keyboard / Mouse: adds support to ignore input devices by name prefix
  * Logo (Builtin): adds TempleOS
  * Disk: allows array input for disk folder and filesystem options
  * CI (Windows): add chafa dependency
  * TerminalFont: Improves Ghostty font config parsing with fallback font detection
  * Revert "Logo (Builtin): add Starry Linux"
  * Disk (Linux): avoids invalid disk creation times before Linux epoch
  * Disk (Linux): replace statx(2) call to syscall(2)
  * CI: adds glibc polyfill step for compatibility
  * CI: merge more jobs
  * CI: update cmake version
  * CI: merge amd64 and aarch64 code with matrix
  * CPU (Windows): trims vendor string read from registry
  * CPU (Windows): handles zero temperature data and refactors value use
  * Wifi (macOS): removes wdutil-based Wi-Fi detection code
  * Presets: add a new example [ci skip]
  * 3rdparty: upgrade widecharwidth
  * CPU (Linux): replaces HWCAP defines with explicit bitmasks for ARM
  * CPU (Linux): add new ARM part numbers
  * LocalIP: adds IPv6 type selection for local IP display
  * Separator: uses widecharwidth for Unicode wcwidth and fixes issue that wchar_t on Windows is 2-byte length
  * Separator: rename property `length` with `times`
  * OpenGL (Windows): simplifies code by removing custom window proc
  * Packaging: update debian stuff [ci skip]
  * Doc: update changelog
  * Global: renames `fractionTrailingZeros` enum to `always/never` for consistance
  * Fastfetch: removes redundant assignment in display config parsing
  * Release: v2.52.0
  * Btrfs (Linux): refactors Btrfs allocation to use profile string
  * Btrfs (Linux): adds tracking of Btrfs data copy counts
  * Terminal: ignores WSL2 unknown process for terminal detection
  * WMTheme (Linux): supports labwc on XFCE4
  * CPU (Linux): add cpu name detection for ia64
  * Doc: update README
  * Settings: renames GNOME settings accessor for clarity
  * Wallpaper (Linux): improves XFCE wallpaper detection via property enumeration
  * Settings: removes direct XFConf support in favor of DBus backend
  * DBus: adds function `ffDBusGetInt`
  * Dbus: adds 2nd argument to ffDBusGetMethodReply
  * CI: bump dependencies
  * Doc: update changelog
  * Fastfetch: improves frequency display config validation and schema
  * Fastfetch: add option `--faction-trailing-zeros`
  * Logo (Chafa): fixes setting `logo.width` with chafa
  * JsonSchema: update
  * Fastfetch: defaults `display.fraction.ndigits` to 2
  * Fastfetch: informs users that module-specific CLI options are no longer supported
  * LocalIP (Linux): skips interfaces without IPs unless MAC display is enabled
  * JsonConfig: fixes `fractionNdigits` will be incorrectly set to `0` when specifying `null`
  * Display: rearranges default format; removes scaled resolution
  * LocalIP: honors `fractionTrailingZeros`
  * Global: adds configurable trailing zeros for double formatting
  * DisplayServer: improves display size rounding and argument clarity
  * Display (Linux): detect scale factor for X11
  * Global (Android): enable X11 related stuff
  * CMake: enable zlib on all platforms
  * DisplayServer (Android): update WM name accurately
  * CMake (Android): link to libm
  * Release: v2.51.1
  * CPU (macOS): removes reliance on unavailable ARM capability headers on macOS
  * Packaging: update debian stuff [ci skip]
  * CPU/GPU (Linux): Improves CPU/GPU temp detection accuracy on Linux/Android
  * Revert "Uptime (Windows): use `QueryUnbiasedInterruptTime`"
  * JsonSchema: update
  * DisplayServer (Linux): upgrade kde-output-device-v2
  * Release: v2.51.0
  * GPU (Android): adds GPU temp detection support
  * Fastfetch: clarify that `--debug` is debug-mode only
  * CPU (Linux): improve temp detection
  * Battery (Android): fix battery temp detection
  * DisplayServer (Android): fix display server name
  * Global: handles missing config directories more gracefully
  * InitSystem (GNU): support shepherd detection
  * CPU (Windows): detects march on WoA
  * CPU (macOS): detects march on Apple Silicon
  * CPU (Linux): detects march on aarch64
  * Processing (Linux): enhances robustness when extracting process name and related fields
  * DiskIO (Linux): trim trailing white spaces
  * Chore: silense compiler warnings
  * CPUUsage: adds user guidance when CPU time fails to increase
  * LocalIP (GNU): adds MAC addr detection support
  * InitSystem: tidy
  * CMake (GNU): disable wifi support
  * Processing (GNU): fix command name reading
  * Common (GNU): more `__GNU__` tests
  * Terminal (GNU): enable version detection
  * Processing (GNU): hurd uses `cmdline` instead of `comm`
  * WM (GNU): enable
  * Global (GNU): code cleanups
  * Chore: tidy tabs
  * CMake (GNU): enable a lot of things
  * localip: Remove AF_LINK on GNU.
  * WIP: shepherd initsystem
  * Fix localip_linux on GNU
  * disable ffPackagesGetNix on when it is not defined
  * Port netif_gnu to the new api.
  * Fork netif_linux to netif_gnu.
  * Start work on GNU
  * TerminalShell: remove special handling of hyfetch
  * Fastfetch: improves config file generation message with tips
  * Chore: silence compiler warnings
  * CPU: fix building on non-x86
  * CPU: adds CPU microarchitecture detection for x64 and reporting
  * Disk: adds formatted free and available disk size fields
  * Logo (Builtin): adds AerynOS
  * Processes (Linux): be compatible with Hurd
  * DisplayServer (Android): update WM name
  * Fastfetch: improves format help output for config and variables
  * WM (Linux): uses the same X11 props as neofetch to query WM name
  * DE (Linux): adds Trinity version detection support
  * GPU (BSD): fallbacks to `pciids/pci.ids`
  * Packaging: update debian stuff [ci skip]
  * GPU (BSD): always use `pci.ids` provided by hwdata
  * Disk: disable hyperlink by default and move it to custom keys
  * TerminalShell (Linux): always ignore pid1 (v2)
  * TerminalShell (Linux): always ignore pid1
  * Disk (Linux): remove unused headers
  * Common: corrects the position for appending milliseconds
  * LocalIP (Linux): improves netlink route parsing by avoiding possible message truncation
  * FFstrbuf: handles double rounding and zero representation in formatter
  * GPU (Windows): improves GPU detection by refining device filtering
  * Shell (Windows): be compatible with fish 4 built by MSYS2
  * Common: refactors number formatting to use type-specific append functions
  * Format: replaces format specifiers with type-safe append functions
  * FFstrbuf: improves double formatting precision handling
  * Duration: use `ffStrbufAppendUInt`
  * FFstrbuf: adds number appending functions
  * Logo (Builtin): honor `logo.width`
  * JsonConfig: support JSON5
  * Common: refactors time formatting to use a shared buffer and utility macro
  * 3rdparty: upgrade yyjson to 0.12.0
  * JsonConfig: adds 'succeeded' module condition to JSON config
  * OS: set the icon of unknown OS type as a cog
  * Modules: return bool to indicate whether the detection is succeeded
  * CI (DFBSD): enable
  * CI (SunOS): fix build
  * CPU (macOS): changes CPU to M2 Pro for Mac14,12 host (#1915)</changelog>
</package>
<package pkgid="093890573eeaf787342878bea768cdcfd982f29d9c89ef3ec624ef95e8a3b5abffc94ef5e68e46bfb781b5418afac1419ae7af15bb46f3e918bfd29b386229c1" name="mle" arch="src">
  <version epoch="0" ver="1.7.2" rel="1.30"/>
  <changelog author="Egor Kuznetsov &lt;egor.kuznetsov.26@gmail.com&gt;" date="1704196800">- Initial build for mle</changelog>
</package>
<package pkgid="f393ed356fa775ccd72011d066989213ca8e8b3375e4a1285e9fc9dcea2bc635dcb48a3db175fc3bf797f27386962e791a435206e58f370521cb7a1deac70d08" name="mle" arch="x86_64">
  <version epoch="0" ver="1.7.2" rel="1.30"/>
  <changelog author="Egor Kuznetsov &lt;egor.kuznetsov.26@gmail.com&gt;" date="1704196800">- Initial build for mle</changelog>
</package>
</otherdata>