File fastfetch.changes of Package fastfetch
-------------------------------------------------------------------
Mon Aug 18 13:23:24 UTC 2025 - egor.kuznetsov.26@gmail.com
- 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 -> Homebrew (#1891) [ci skip]
* Doc: update README & 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]
-------------------------------------------------------------------
Fri Aug 01 18:47:07 UTC 2025 - egor.kuznetsov.26@gmail.com
- 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
-------------------------------------------------------------------
Fri Jul 18 18:15:23 UTC 2025 - egor.kuznetsov.26@gmail.com
- 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]
-------------------------------------------------------------------
Sat Jun 28 19:34:23 UTC 2025 - egor.kuznetsov.26@gmail.com
- 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]
-------------------------------------------------------------------
Thu Jun 12 14:08:47 UTC 2025 - egor.kuznetsov.26@gmail.com
- 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 `<module>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
-------------------------------------------------------------------
Fri Apr 11 12:20:39 UTC 2025 - egor.kuznetsov.26@gmail.com
- 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]
-------------------------------------------------------------------
Thu Apr 03 12:07:16 UTC 2025 - egor.kuznetsov.26@gmail.com
- 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 & 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]
-------------------------------------------------------------------
Fri Mar 21 19:18:28 UTC 2025 - egor.kuznetsov.26@gmail.com
- 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
-------------------------------------------------------------------
Sat Mar 08 11:51:26 UTC 2025 - egor.kuznetsov.26@gmail.com
- 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 & 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 & 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]
-------------------------------------------------------------------
Thu Feb 20 18:53:00 UTC 2025 - egor.kuznetsov.26@gmail.com
- 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 & 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->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]
-------------------------------------------------------------------
Thu Feb 13 18:57:37 UTC 2025 - egor.kuznetsov.26@gmail.com
- 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 & 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 -> 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
-------------------------------------------------------------------
Sun Jan 26 20:45:59 UTC 2025 - egor.kuznetsov.26@gmail.com
- 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 & 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]
-------------------------------------------------------------------
Mon Jan 13 21:40:11 UTC 2025 - egor.kuznetsov.26@gmail.com
- 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]
-------------------------------------------------------------------
Sat Jan 11 23:39:11 UTC 2025 - egor.kuznetsov.26@gmail.com
- 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]
-------------------------------------------------------------------
Thu Dec 26 20:01:56 UTC 2024 - egor.kuznetsov.26@gmail.com
- 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
-------------------------------------------------------------------
Wed Dec 18 20:25:52 UTC 2024 - egor.kuznetsov.26@gmail.com
- 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 <module>-format`
* Host: silence compiler warnings
* Host (Sun): fix build
* Host: detect mac model in FreeBSD & 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]
-------------------------------------------------------------------
Tue Dec 03 21:57:39 UTC 2024 - egor.kuznetsov.26@gmail.com
- Update to version 2.31.0:
* Display (Linux): detect bit depth when libdrm is used
* Terminal: Support sakura version & font detection
* Release: v2.31.0
* Processing (Linux): interrupt poll & 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 & frequency detection
* Wifi (Android): silence compiler warnings
* Chore: silence some warnings
* Wifi (Android): report more props
* Wifi: print channel band
* Wifi (Linux): detect frequency & 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 & refresh rate in custom format
* Display: add scale factor in custom format
* Display (Android): fix build
* Display (Windows): detect preferred resolution & refresh rate
* Display (macOS): detect maximum resolution & refresh rate
* Display (Linux): detect preferred resolution and refresh rate
* DisplayServer (Linux): remove support of xcb & 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]
-------------------------------------------------------------------
Mon Nov 18 18:47:27 UTC 2024 - egor.kuznetsov.26@gmail.com
- 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 & 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]
-------------------------------------------------------------------
Sat Nov 09 22:35:06 UTC 2024 - egor.kuznetsov.26@gmail.com
- 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 & 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 & 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]
-------------------------------------------------------------------
Sun Oct 27 12:21:41 UTC 2024 - egor.kuznetsov.26@gmail.com
- Update to version 2.28.0:
* Release: v2.28.0
* Windows: use system provided `CM_Get_Device_Interface_PropertyW`
* Doc: update changelog [ci skip]
* CPUUsage / DiskIO / NetIO: add option `waitTime`
* CI: fix build for old compilers
* PhysicalDisk (Linux): don't report obviously invalid temp
* Chore: introduce macro `ARRAY_SIZE`
* Processing (Windows): generate unique pipe name
* CMake: add comments
* Chore: remove all #ifndef guards
* Chore: use ffStrCopyN instead of strlcpy
* Presets: add `showAllIps` to all.jsonc
* CMake: enable fortify if available
* DiskIO (Linux): fix multi-namespace nvme drive detection
* Chore: don't use strncpy in favor of strlcpy
* Chore: silence some warnings
* Disk (Android): fix compiling
* OS (Windows): hard linking winbrand
* TPM (Windows): use system headers
* Battery (macOS): fix remaining time detection
* Disk: check for mntopt instead of statvfs when detecting read only flags
* CI (Linux): try fixing build
* Chore (Linux): code cleanup
* IO (Linux): improve performance of `ffPathExists`
* Btrfs (Linux): simplify
* Fastfetch: don't use invalid paths when printing preset files
* DiskIO (Linux): simplify
* PhysicalDisk (Linux): simplify
* Battery (Linux): improve performance by specifying `O_PATH`
* Chore (Linux): always ignore hidden files when enumerating directories
* Fixing wrong color in the XeroArch ASCII logo (#1342)
* Kernel: don't print `( - `
* Doc: update changelog
* Battery (macOS): report time remaining only when discharging
* Kernel (Windows): detect wine
* Display: report platform api used for detection
* Netif (Linux): fix unused-result warning (#1340)
* Processing(Linux, SunOS): little optimizations (#1341)
* Netif (Linux): don't use fseek
* CI: remove musl-aarch64
* Zpool: don't report invalid fragmentation
* CI: fix spellcheck errors
* LocalIP (Linux): simplify ffNetifGetDefaultRouteImpl
* fix build in ancient MacOS (#1334)
* IO (Windows): fix build
* PhysicalDisk (Linux): simplify code
* PowerAdapter (Linux): simplify
* IO: add function `ffReadFileDataRelative`
* Battery (Linux): simplify
* IO (Windows): add `ffAppendFileBufferRelative`
* Battery (Linux): check if AC is connected
* IO (Linux): use openat to simplify code
* Battery (Linux): revert back not to use uevent
* Memory (SunOS): simplify
* Memory (OpenBSD): fix detection of used memory size
* OpenCL: print more detailed error messages
* Battery (FreeBSD): fix time remaining detection
* run.sh: Improve compatibility with other systems (#1332)
* Battery (Android): better status detection
* Battery (FreeBSD): detect time remaining
* Battery (Linux): calcuate time remaining with current & charge if time_to_empty is unavailable
* Battery (Linux): rewrite with `uevent`, add remaining time support
* Battery: support time remaining detection
* CI (SunOS): fix build
* Gamepad: report joystick too
* Mouse / Keyboard (FreeBSD): add support
* Keyboard: fix CI
* Mouse / Keyboard: try fixing x86 link errors
* Mouse / Keyboard (macOS): don't detect vendor name
* Mouse / Keyboard: try harder to get device name
* Mouse / Keyboard: add placeholders for unsupported platforms
* Mouse / Keyboard (Windows): add support
* Gamepad (Windows): fix invalid handle testing
* Mouse / Keyboard: add new modules
* CI: use mingw32 for windows-i686
* Logo (Builtin): add MidOS
* Logo (Builtin): add eweOS (#1328)
* Chore: fix some unused paramater/function warnings (#1324)
* Packaging: update debian stuff [ci skip]
-------------------------------------------------------------------
Sun Oct 06 15:41:21 UTC 2024 - egor.kuznetsov.26@gmail.com
- Update to version 2.27.1:
* Release: v2.27.1
* DisplayServer (Linux): fix invalid display name detection
* Doc: update README.md [ci skip]
* IO: don't reuse va_list
* TerminalFont: fix possible buffer overflow
* Display (Linux): prefer detecting physical size from EDID
* LocalIP: document show-mtu and show-speed command line options (#1318)
* Version (Android): correctly report sysName
* CMake: fix building on Android
* LocalIP: only print properties if detected in JSON results
* Display (macOS): fix invalid physical size on old Intel Mac
* Logo (Builtin): add ValhallaOS
* Doc: update changelog
* Logo (Builtin): add XeroArch Ascii logo (#1312)
* Chore: fix a warning of warning
* Doc: update changelog [ci skip]
* CI: test `showFlags`
* LocalIP: fix bug that flags are appended multiple times
* LocalIp: support get interface flags (#1315)
* Global: use glob(3) if wordexp(3) is not available
* TPM (Windows): corrently report `TPM device is not found`
* CI: add OpenBSD
* OpenBSD: init platform support
* Chore (Windows): silence some warnings
* Logo (Builtin): remove some paddings
* Terminal (Linux): remove invalid info when fail to detect terminal by process tracing
* Doc: fix Json schema [ci skip]
* Doc: update changelog for 2.27.0
* Monitor: don't deprecate this module
* Board (Linux): trim strings
* Completions (zsh, fish): check for python3 (#1310)
* CPU (Linux): fix temperature detection (#1308)
* DateTime: add `day-pretty`
* Display (FreeBSD): add guards between linux specific code
* Monitor: make it an alias of Display module
* GPU (Linux): fix possible buffer overflow
* Display: don't use non-ascii charactors
* Display: display `ppi` in integer
* Monitor: remove module
* Display (Windows): merge features of `Monitor` module
* Display (Linux): merge features of `Monitor` module
* Display (macOS): merge `monitor` module features
* Monitor (macOS): improve performance
* Brightness: add new option `--brightness-compact`
* CPU (Linux): detect SOC name if available
* GPU (Linux): add a special case for brcm
* Board (Linux): use `/proc/device-tree/board` if available
* Doc: update README.md [ci skip]
* GPU (Linux): trim trailing new line
* Packaging: update debian stuff [ci skip]
-------------------------------------------------------------------
Sun Sep 29 19:25:32 UTC 2024 - egor.kuznetsov.26@gmail.com
- Update to version 2.26.1:
* Release: v2.26.1
* GPU: use adapterLuid as deviceID for non-pci devices
* GPU (Windows): fix uninitialized variables
* CMake: allow to disable pacstall
* Packaging: update debian stuff [ci skip]
* Doc: update changelog
* Display (Linux): report displays of unknown connection state too
* GPU (macOS): update how integrated GPUs are detected
* Display (Linux): detect all enabled or connected connectors (#1301)
* Logo (Builtin): add GXDE OS
* CPU (Linux): remove `bios_limit` detection
* Release: v2.26.0
* Scripts: add SPDX-License-Identifier
* GPU (Linux): fix building with old kernel headers
* GPU (Linux): detect EU count & vmem size of Intel GPUs
* GPU: use driver reported adapter name if available
* GPU (Linux): use renderDN instead of cardN when detecting AMD cards
* GPU: fix usage of bsearch
* Chore (macOS): use simplified syntax
* Kmod: support macOS
* Util: rename KernelMod to Kmod
* CMake: fix more linking errors in dynamic mode
* GPU (Linux): try fixing linking errors when dyamic linking is used
* GPU: fix compiling error when `-DCUSTOM_PCI_IDS_PATH` is used
* GPU (Linux): fix some obvious bugs found in #1284
* CI: fix build
* Scripts: fix old python version compatibility
* TPM (FreeBSD): fix silly bug...
* GPU (macOS): detect GPU driver version
* Util: add function `ffKernelModLoaded` and use it
* CI: try building with `-DENABLE_EMBEDDED_PCIIDS=ON`
* Presets: add tpm to all & ci
* TPM (FreeBSD): report clearer error if tpm module is not loaded
* Processing (Windows): correctly escaping arguments
* FFstrbuf: add new methods `ffStrbufPrependC` and `ffStrbufInsertNC`
* TPM (FreeBSD): add support
* TPM: update description
* TPM: add new module
* GPU: embed pci.ids into fastfetch
* GPU: simplify logic of pci.ids file loading
* Monitor (Linux): prefer DRM
* GPU (Linux): refactor code to support non-apple SOCs
* Chore: remove temps_windows
* Chore: remove temps_bsd
* TerminalFont: fix hanging when font name is long (kitty)
* Chore: rename temps_apple
* Wifi (macOS): fix protocol detection on Sequoia
* Chore: remove temps_linux
* Temps (Linux): simplify
* GPU (SunOS): fix compiling
* Presets: fix examples/24
* GPU (Windows): better Intel GPU type detection
* GPU: simplify integrated GPU detection
* Temps (Linux): simplify
* PhysicalDisk (Linux): cleanup temp detection code
* GPU (Linux): refactor; add amdgpu DRM connector
* Doc: add donation info
* Display: always print inches in integer
* Packages (Linux): support pacstall
* Packages (Linux): count flatpak runtime packages
* Doc: update README [ci skip]
* Terminal: ignore `sudo` and `su`
* Logo (Builtin): add FoxOS
* Chore (Windows): use standard libc api
* TerminalShell (Linux): improve perf of yakuake version detection
* TerminalShell (Linux): improve performance of foot version detection
* TerminalFont (Linux): fix font size detection of foot when fall back font is used
* Packaging: update debian stuff [ci skip]
* GPU: clean up GPU index detection code
* GPU: detect GPU index (#1267)
-------------------------------------------------------------------
Thu Sep 19 18:52:04 UTC 2024 - egor.kuznetsov.26@gmail.com
- Update to version 2.25.0:
* Release: v2.25.0
* Logo (Builtin): update TorizonCore To Torizon OS
* Presets: add new example
* Wifi (macOS): improve security type detection
* Networking: report empty server response
* Networking (Windows): fix calling IPv6 server
* Doc: update changelog
* Processing: increase the default value of `processingTimeout`
* Wifi (macOS): improve support for macOS Sequoia
* Camera (Linux): fix compiling with old linux headers
* LocalIP (FreeBSD): don't use Wifi speed as Ethernet speed
* JsonSchema: add btrfs
* Presets: update all / ci
* Btrfs: add new module
* LocalIP: add new option `--show-localip-{speed,mtu}`
* CPU (FreeBSD): fix cpu temperature detection
* OS (Linux): fix parrot logo detection
* Doc: Change grammar (#1263)
* Chore: fix typos
* Packages (Windows): fix compiling
* CPU (FreeBSD): remove using of freq_levels
* Packages: don't cache values if we fail to acquire modify time
* Packages: add cmake options to disable certain package managers at compile time
* CMake: simplify
* Packages (FreeBSD): cache result
* Packages (Linux): cache result based on mtime
* CPU (FreeBSD): remove `showPeCoreCount` support
* CPU (FreeBSD): fix invalid CPU temperature
* feat: Moore Threads GPU add support to query number of cores (#1259)
* Packaging: update debian stuff [ci skip]
-------------------------------------------------------------------
Sat Sep 14 10:47:10 UTC 2024 - egor.kuznetsov.26@gmail.com
- Update to version 2.24.0:
* Presets: fix 9.jsonc [ci skip]
* TerminalFont: silence CodeQL warnings
* Release: v2.24.0
* Formatting: support syntax of sub string
* Logo (Builtin): Add Lliurex Art (#1257)
* Command: add new option `--command-param`
* IO: allow issuing multiple terminal queries in one call
* TerminalTheme (macOS): fix hanging on GNU screen 5.0
* Board (Linux): use model name as board name if SMBIOS is not available
* CPU (Linux): update comments
* GPU (Linux): improve result for unknown Apple SOC
* CPU (Linux): detect Qualcomm Snapdragon SOC
* Doc: update changelog [ci skip]
* Binary (FreeBSD): update comments [ci skip]
* Terminal: add fast path of mate-terminal version detection
* Binary (FreeBSD): use system libelf
* Revert "TerminalTheme: fix hanging on screen 5.0"
* CPU (FreeBSD): detect the number of online cores
* CPU (ARM): add new microarchitectures
* CPU (Linux): add more Snapdragon SOCs
* Doc: remove `--lib-xxx` [ci skip]
* Uptime (Linux): fix linux bootTime (#1249)
* Doc: Fix grammer in README.md (#1248) [ci skip]
* Global: remove `--lib-xxx` support
* OpenGL (macOS): support EGL (ANGLE) on macOS
* Logo (image-raw): better Windows support
* TerminalTheme: support Windows
* Packaging: update debian stuff [ci skip]
* Format: improve performance; fix `formatArgSet` for bool
* Globals: use generic selection when passing format args
* Uptime: fix custom format of `bootTime`
* Monitor: fix custom format of `refreshRate`
* Wifi: fix signal quality printing in custom format
* CI (Windows): build x86-64 binaries with imagemagick support
* InitSystem (Linux): fix dinit version parsing
* Image (Windows): support sixel protocol
* TerminalSize (Windows): support size in pixel detection
* InitSystem (FreeBSD): fix build
* CMake: use system system yyjson in unit tests
* InitSystem (Linux): support dinit
-------------------------------------------------------------------
Sat Sep 07 10:14:55 UTC 2024 - egor.kuznetsov.26@gmail.com
- Update to version 2.23.0:
* JsonSchema: update `zpool`
* Release: v2.23.0
* Logo (Image): better Windows support
* Presets: use string padding syntax
* Format: support syntax of padded string
* Logo (Builtin): add Huawei Cloud EulerOS
* Logo (Builtin): add small Steam Deck
* TerminalTheme: fix hanging on screen 5.0
* Zpool: don't break `-DBINARY_LINK_TYPE=dynamic`
* Zpool (SunOS): fix the dlsym error
* Logo (Builtin): Add Steam Deck Logo (#1229)
* Logo (Builtin): make ubuntu logo colorable
* Terminal: improve performance of xfce4-terminal version
* Logo (Builtin): Add Magix (#1228)
* Camera (FreeBSD): fix module was incorrectly disabled (v2)
* Completion (Zsh): add completion for `--logo-color-{1..9}` (#1222)
* Camera (FreeBSD): fix module was incorrectly disabled
* CI: run all modules on FreeBSD and SunOS
* CI: add zpool
* Zpool: fix build on SunOS
* Zpool: add new module
* Battery: print model name in key
* Completion: add optional completion support for certain flags (#1219)
* Binary (Linux): fix building without libelf enabled
* NetIO: don't print `*` if `defaultRouteOnly` is set
* Logo (Builtin): update amogos
* Binary: improve performance
* DE (Linux): support unity version detection
* Shell: improve performance of bash and zsh version detection
* Completion: update zsh-completion to reflect latest upstream changes (#1217)
* IO (Unix): fix isDir condition checking; skip hidden files
* Packaging: update debian stuff [ci skip]
-------------------------------------------------------------------
Mon Aug 26 19:59:48 UTC 2024 - egor.kuznetsov.26@gmail.com
- Update to version 2.22.0:
* Release: v2.22.0
* Packages (Linux): add Linglong support (#1214)
* Completion: add zsh-completion (#1213)
* Display: honor `preciseRefreshRate` in custom format
* DiskIO (Linux): fix possible segfault
* LocalIP (Android): fix build
* LocalIP (Linux): try fixing musl build
* LocalIP: make link speed formattable
* Editor (SunOS): enable libelf on SunOS
* LocalIP: detect ethernet speed
* Locale: remove usage of LC_MESSAGE
* CPU (Windows): fix compiling errors
* CPU (Linux): add code name of Apple M4
* TerminalShell: ignore the parent process if `$FFTS_IGNORE_PARENT` is set to `1`
* Fastfetch: don't enable locale for `LC_NUMERIC`
* Editor: fix bug of executable searching
* Binary: support Windows
* Loadavg (Linux): read `/proc/loadavg` instead of `/proc/uptime`
* CPU (Linux): make "Hardware :" arm specific
* Version: support loongarch
* CPU (Linux): support loongarch
* CPU (Linux): don't parse unnecessary lines on certain platforms
* CPU (Android): try support old armv7 smart phone
* Binary: support macOS
* Presets: update examples/23.jsonc
* Disk (Linux): fix hang in WSL when custom format is used
* Global: fix build on Windows
* Logo (Builtin): add SleeperOS_small
* Editor: improve performance of version detection
* Colors (Linux): support tmux in linux TTY
* Logo (Builtin): Sleeper OS zzzZZZ (#1199)
* Doc: update readme [ci skip]
* CMake: fix build on Android
* CPU: detect frequency by cpuid (x86 only)
* CPU (Linux): tidy
* TerminalShell (Linux): improve performance of GNOME Terminal version detection
* Logo (Builtin): Add Lingmo OS Logo (#1192)
* Packaging: update debian stuff [ci skip]
* Doc: Improve installation instructions in the README (#1182)
* CPU (Linux): silence complier warnings
* DisplayServer (macOS): fix building on ancient macOS version
-------------------------------------------------------------------
Thu Aug 15 19:48:46 UTC 2024 - egor.kuznetsov.26@gmail.com
- Update to version 2.21.3:
* Release: v2.21.3
* CPU (Linux): also detect CPU name for arm32
* CPU (Linux): better ARM cpu name detection
* GPU: don't pre-allocate memory
* GPU (Linux): actually fix name detection of Intel Arc GPUs
* Packaging: update debian stuff [ci skip]
* Doc: fix changelog [ci skip]
* CI: try fixing FreeBSD
* Logo (Builtin): add GoldenDog Linux
* Colors (Linux): only apply work around in Linux Console
* Release v2.21.2
* Doc: update changelog
* CMake: try fixing detection of `pthread_timedjoin_np`
* Logo (Builtin): trim final new line
* Display: remove detection of `WCG enabled`
* GPU (Windows): fix missing GPUs sometimes
* Fastfetch: fix bug that stat info is unexpectly printed
* GPU (Windows): code refactor
* BootMgr (Windows): `ControlSet001` -> `CurrentControlSet`
* Display / Monitor (macOS): code refactor
* Fastfetch: support `--stat <num>`
* Fastfetch: increase precision of `--stat`
* GPU (Windows): don't skip GPU silently
* Logo (Builtin): HyprOS logo (#1180)
* Logo (Image): try support tmux (doesn't work yet)
* CPU (Linux): embed the arm part codes of lscpu
* GPU (BSD): fix build
* GPU (Linux): ensure we correctly get the marketing name
* GPU (Linux): fix uninited struct fields
* GPU (Linux): fix intel GPU type detection
* GPU (Linux): fix bad Intel Arc GPU name
* CMake (Linux): complain about `pthread_timedjoin_np` is not found
* Packaging: update debian stuff [ci skip]
-------------------------------------------------------------------
Sat Aug 10 11:59:53 UTC 2024 - egor.kuznetsov.26@gmail.com
- Update to version 2.21.1:
* TerminalFont (Linux): when detecting st, report an error if fails to load libelf
* Release v2.21.1
* Version: report git commit hash
* Presets: set timeout to publicip
* InitSystem (Android): don't break build
* GPU (Linux): always try directx
* GPU: defaults to `--gpu-detection-method pci` on x86 to detect disabled gpus
* CI (Linux): fix libelf dep installation on musl
* CI: build with libelf
* CI: fix build on FreeBSD & SunOS
* InitSystem (macOS): fix compiling
* TerminalFont (Linux): improve performance of st terminal font detection
* InitSystem (Linux): add fast path for systemd version detection
* Util (Linux): add elf helper
* Terminal (Linux): add kitty version detection fast path back
* DBus: increase dbus timeout
* Logo (Builtin): add vanilla OS 2 logo (#1168)
* Logo (Builtin): Add support for Linux From Scratch (#1165)
* Chore: update editorconfig [ci skip]
* Locale (Linux): Add `LC_ALL` check (#1166)
* Logo (Builtin): add new small vanilla logo (#1167)
* Colors (Linux): fix light color doesn't work on Linux tty
* DisplayServer (Linux): don't rely on `$XDG_SESSION_TYPE` for detecting wm protocol
* GPU (Linux): fix wrong GPU max frequency on asahi
* Wifi (Linux): fix building error without `linux/wireless.h`
* Update FUNDING.yml [ci skip]
* Packaging: update debian stuff [ci skip]
-------------------------------------------------------------------
Tue Aug 06 21:18:59 UTC 2024 - egor.kuznetsov.26@gmail.com
- Update to version 2.21.0:
* Monitor: improve refreshRate formatting
* CMake: Release v2.21.0
* Doc: update changelog for v2.21.0
* GPU (BSD): improve type detection for Intel integrated GPUs
* CMake: clarify BSD is FreeBSD
* Logo (Builtin): QTS logo (#1152)
* Shell (Linux): don't detect hyfetch as shell on NixOS (#1149)
* Disk (BSD): minor fix for a type, fixes calculation of disk usage on 32-bit (#1150)
* Doc (Logo): metion size requirement [ci skip]
* Wifi (Linux): fix compiling without dbus
* Wifi (Linux): implement libnm stuff with plain dbus calls
* Media (Linux): detect playing status; update dbus api change
* Bluetooth (Linux): update for DBus api changes
* DBus: code cleanup; prepare for future commits
* Shell (Linux): remove version detection for unknown shells
* Global: remove using of libnm
* GPU (Windows): fix missing vendor string
* GPU (Windows): use setupapi to find GPU devices
* GPU (MT): fix segfault at program exit
* GPU (BSD): correctly detect GPU type
* GPU: code cleanup; port MT specific code to Windows
* GPU (Linux): Support Moore Threads GPU (#1142)
* GPU (Linux): don't ignore disabled GPU
* GPU (Linux): use the device name that driver provides
* Wifi (Linux): remove libnm dependency
* GPU (Linux): fix compiling (2)
* GPU (Linux): fix compiling
* GPU (Linux): embed part of `asahi_drm.h` code
* GPU (Windows): fix bug that assuming pci bus id > 0
* Logo (Builtin): update endeavour_small
* Display (macOS): fix invalid refresh rate in old mac
* Wifi (macOS): use private property to fetch ssid
* Display (macOS): don't parse string
* Wifi: rename `macAddress` to `bssid`
* Option: print error when finding invalid color code
* GPU (WSL): fix building
* GPU (macOS): report core usage
* GPU (macOS): ensure we only detects GPU
* GPU (Linux): detect if nvidia driver is open source or proprietary
* GPU (Nvidia): detect GPU core usage
* GPU (Windows): use pci bus id to match Nvidia cards
* WM (Linux): don't use `wl-restart` as WM name
* PhysicalMemory: make sure to detect all memory devices
* DisplayServer (Linux): don't print unknown as display name
* IO: disallow input echo
* CPU (Android): add SD 4s Gen 2
* DisplayServer (Linux): ensure $XDG_RUNTIME_DIR is set before connecting wayland
* GPU (Linux): fix apple gpu support
* Global: don't use __has_include
* CI (Linux): build aarch64 version with ubuntu 20.04
* BluetoothRadio (Windows): fix segfault
* BluetoothRadio: don't print unnecessary index
* CPU: fix freq max formatting
* BluetoothRadio (macOS): detect more info
* BluetoothRadio: add more props; remove hciVersion; code cleanup
* BluetoothRadio (macOS): add dirty support
* BluetoothRadio (Linux): add support
* Bluetooth (Linux): more strict checks
* DBus: rename ffDBusGetValue to ffDBusGetString; add ffDBusGetUint16
* CI: silence spell checks
* BluetoothRadio (Windows): new module
* Bluetooth (Windows): tidy; update module description
* DisplayServer (Linux): fix build with no wayland support
* Terminal (Windows): fix build
* TerminalShell: improve SSH detection
* DisplayServer (Linux): don't try to connect wayland and X11 in tty mode
* Doc: fix changelog [ci skip]
-------------------------------------------------------------------
Fri Jul 26 17:56:09 UTC 2024 - egor.kuznetsov.26@gmail.com
- Update to version 2.20.0:
* Release: v2.20.0
* Global (macOS): always check NULL after `IORegistryEntryCreateCFProperty`
* GPU (macOS): fix possible segfault when detecting GPU frequency (M1 Air)
* Android (Linux): detect MTK CPU part name
* Logo (Image): fix `paddingTop` doesn't work with `position: right`
* Logo (Image): fix `padding*` not working correctly
* Android (Linux): report Snapdragon SOC marketing name
* Doc: update help message
* Presets: update some presets
* Presets: remove meaningless presets
* Presets: update examples
* Global: update icon
* Global: fix JSON option `modules.keyIcon` doesn't work
* Presets: simplify `examples/2.jsonc` with builtin icon feature
* Sound: update icon
* Global: add option `display.key.paddingLeft`
* LM: change icon
* NetIO: don't use the same icon as DiskIO
* Custom: fix using icon as key
* Global: support display predefined icon in custom key format
* Editor: fix printing editor type
* Global: add option `--<module>-key-icon`
* Fastfetch: add option `--key-type <enum>`
* Logo (Image): don't require logo height when using position right
* TerminalFont (Linux): remove Windows Terminal support for WSL
* TerminalFont (Linux): detect system mono font
* Fastfetch: add icons
* Display (Linux): don't wake up suspended GPU
* LM (Linux): improve ssh version detection code
* Packaging: update debian stuff [ci skip]
-------------------------------------------------------------------
Wed Jul 24 17:39:11 UTC 2024 - egor.kuznetsov.26@gmail.com
- Update to version 2.19.1:
* Release: v2.19.1
* Fastfetch: print error when invalid freq option is found
* GPU: fix frequency printing when using custom formation
* Doc: update README [ci skip]
* Display (Android): fix MiUI
* Display: print `[HDR]` if enabled
* CPU: fix double frequency value when using custom formation
* Doc: update README [ci skip]
* Fastfetch: rename `binaryPrefixType` to `sizeBinaryPrefix`
* JsonConfig: rename `display.binaryPrefix` to `display.size.binaryPrefix`
* Release: v2.19.0
* Host (macOS): tidy
* Terminal: fix possible buffer overflow
* Brightness (Linux): use `brightness` instead of `actual_brightness`
* Monitor (Windows): if current refresh rate is higher than preferred refresh rate, use it.
* Display: detect if WCG enabled
* Common: fix compiler warnings
* Doc: fix typo [ci skip]
* DateTime: try fixing 32bit linux
* Doc: README.md: link to issue (#1107) [ci skip]
* Doc: update changelog [ci skip]
* Monitor: enable module on FreeBSD and SunOS
* Colors: fix bug with `--pipe` enabled
* Monitor (Linux): detect by Xrandr if EDID is not available
* Display: update JSON output structure
* Display (Linux): support HDR detection for KDE; fix build
* Display: print more information
* DisplayServer (macOS): detect bit depth
* Display (Windows): check for hdr enabled & bit depth
* Monitor (Windows): detect maximum refresh rate
* Monitor (macOS): detect maximum refresh rate
* Doc: Small typo corrected in man page (#1102)
* JsonSchema: fix typo [ci skip]
* GPU (macOS): support GPU frequency detection for Apple Silicon
* GPU: support printing frequency in MHz
* CPU: move option `freqNdigits` into display section
* CI: disable `--stat` which messes output
* CPU: support display frequency in MHz
* CPU: remove support of min freq detection
* Separator: add option `--separator-length`
* Display: show inches instead of full size
* Logo (Builtin): add ALT Linux
* Display: rotate physical demensions
* Display: print physical size
* FFstrbuf: improve ffStrbufSubstr*
* TerminalFont: improve wezterm detection
* Terminal: support zed version detection
* Colors: don't disable color if `--color-symbol background` is set in `--pipe` mode
* Colors: add and default to `--colors-symbol background`
* Doc: update README [ci skip]
* Logo (Builtin): update void logo
* Disk (Android): ignore `/apex/*`
* GPU: fix `--gpu-hide-type` doesn't work
* Revert "TerminalFont (Linux): improve detection for xterm"
* IO (Windows): remove debug output
* Presets: clean up examples
* Formating: support specifying costant strings
* TerminalFont (Linux): improve detection for xterm
* TerminalFont (Linux): improve detection for xterm
* InitSystem (Android): fix detection
* GPU (Linux): support intel xe driver
* Presets: fix examples/19.jsonc
* Display (Linux); improve display type detection
* Display: detect physical width and height
* Packaging: update debian stuff [ci skip]
-------------------------------------------------------------------
Fri Jul 12 16:14:24 UTC 2024 - egor.kuznetsov.26@gmail.com
- Update to version 2.18.1:
* Release: v2.18.1
* CI: upgrade freebsd version
* GPU (Linux): detect more GPU driver versions
* GPU (Linux): fix GPU driver detection
* General: support more module for `--detect-version`
* General: rename `--ts-version` to `--detect-version`
* CI: remove freebsd-aarch64
* Release: v2.18.0
* Fastfetch: use the official function instead of our local copy
* 3rdparty: upgrade yyjson to 0.10.0
* Doc: update json schema and help message
* OpenGL (Windows): support EGL via ANGLE
* OpenGL: detect library version
* OpenGL (Linux): fix flag `--opengl-library` doesn't work
* GPU (Linux): ignore disabled PCI devices
* Doc: update changelog
* Presets: add missing modules to `all` & `ci`
* Display (Linux): remove debug output
* Wifi: print signal quality
* Display: fix build on FreeBSD
* Percentage: support percent bar in custom formatting
* Fastfetch: don't mess output with `--stat` in `--pipe` mode
* Separator: don't print color in `--pipe` mode
* Base64: silence warnings
* Display (Linux): support primary display detection for GNOME & Cinnamon
* Display (Linux): improve id generation for wayland
* Editor: don't print `()`
* GPU (Linux): remove possible overhead
* GPU (Linux): don't detect frequency for AMD cards
* Util (Base64): silence compiler warnings
* fish completion: pipe straight to Python (#1076)
* Battery (Linux): add comments [ci skip]
* Display (Linux): try fix building for old wayland version
* Display (Linux): better zxdg manager handling
* Global: fix memleaks
* Display (Wayland): code refactor
* Display (Linux): support primary display detection for GNOME
* LocalIP: don't print `*` if `defaultRouteOnly` is set
* Display (Linux): support primary display detection for KDE
* Display (Wayland): support fractional scale for KDE
* PhysicalMemory: don't print `(null)` in property `locator`
* PhysicalDisk (Linux): detect revision of USB devices
* Disk: update module description
* Fix Arkane Linux color code (#1072)
* Logo (Builtin): add Opak
* Add Arkane Linux logo (#1071)
* Packaging: update debian stuff [ci skip]
-------------------------------------------------------------------
Thu Jul 04 20:54:58 UTC 2024 - egor.kuznetsov.26@gmail.com
- Update to version 2.17.2:
* Release: v2.17.2
* Packages (Linux): detect flatpak-app only
* Doc: update changelog
* Revert "OS (Linux): prioritize `prettyName` over `name`"
* PhysicalDisk: silence compiler warnings
* CMake: add option `ENABLE_LTO`
* Wifi: silence compiler warnings
* LocalIP: silence compiler warnings
* Logo (Image): fix building on SunOS
* Editor: make `--ts-version false` disable version detection
* DE (Linux): fix silly bug
* CMake: don't error out if we fail to detect glibc version
* WM: minor code cleanup
* WMTheme: support cinnamon-wayland
* DE (Linux): improve Cinnamon version detection
* Doc: update copyright [ci skip]
* CI: clean up
* CI: add stale.yml [ci skip]
* Kernel: code refactor
* Doc: correct various errors of English (#1065)
* TerminalFont (Linux): support Ptyxis
* Terminal (Linux): support ptyxis version detection
* DE: Fix spelling of LXQt (#1063)
* Color: if value is already an ANSI escape code, use it
* Theme: Fix spelling of Qt (#1062)
* PhysicalMemory: remove an unused variable
* Packaging: update debian stuff [ci skip]
* OS (Linux): prioritize `prettyName` over `name`
* JsonSchema: add formattion keys for CpuUsage module
* PhysicalMemory: fix incorrect size value for large memory sticks
* Battery: fix index format with multiple batteries
* docs: document `--logo` `none` (#1059)
* Doc: fix document of `--pipe` [ci skip]
-------------------------------------------------------------------
Sun Jun 30 16:12:01 UTC 2024 - egor.kuznetsov.26@gmail.com
- Update to version 2.17.1:
* GPU: don't print `16 EiB`
* Release: v2.17.1
* Fastfetch: fix segfaults with `--show-errors` and an invalid module
* Theme (QT): ignore QVariant format (#1054)
* GPU: print formatted size when `--gpu-format` is used
* GPU: guard GPU frequency behind `driverSpecific`
* Logo (Image): fix building on Windows
* CMake (Windows): don't generate `libffwinrt.dll.a`
* TerminalShell / TerminalFont: fix CodeQL warnings
* Release: v2.17.0
* Doc: update readme & changelog
* Logo (Image): improve performance when image is cached
* Logo (Image): support `--logo-position right`
* JsonConfig: clarify the breaking change
* Format: trim white spaces after truncation
* Logo (Image): support `--logo-position right` for `iterm` and `kitty-direct`
* QT: add qt[56]ct support
* QT: import kvantum theme name
* Modules: fix custom key not working if the key is formatted outside
* Logo (Builtin): support `--logo-position right`
* Logo: rename `--logo-separate` to `--logo-position`
* CMake: Use Coordinated Universal Time rather than timezone-varying local date (#1046)
* Doc: fix typo [ci skip]
* Doc: Make format description more clear at json_schema.json (#1045) [ci skip]
* Doc: clearify that we don't support truncate multi-byte chars [ci skip]
* Format: support argument truncation
* IO (Windows): implement `ffSuppressIO`
* TerminalSize (Windows): make it work when stdin or stdout is redirected
* Doc: update changelog [ci skip]
* IO: enable terminal query in `--pipe` mode
* Doc: add debian in README [ci skip]
* Fastfetch: add JSON config `general.preRun`
* TerminalFont (Linux): fix `XTGETTCAP` response is printed in console when query kitty term font
* IO: improve `ffGetTerminalResponse`
* Builtin (Asahi): fix logo color
* IO (Linux): make sure `stdin` and `stdout` are tty when querying terminal
* OS (macOS): correctly set pretty name
* CI (Windows): bundle amd_ags dlls
* GPU (AMD): fix use-after-free crashes
* GPU (Windows): don't assume `revId` is not 0
* CMake: remove option `ENABLE_PROPRIETARY_GPU_DRIVER_API`
* GPU (Nvidia): fix definition of `nvmlMemory_v2`
* Terminal: add fast path of version and font detection for kitty
* GPU (Windows): detect GPU type with AMD driver
* GPU (SunOS): fix detection
* CPUCache: add detection by SMBIOS
* LM (Linux): fix invalid path
* Doc: update json_schema [ci skip]
* CMake (Windows): install `libffwinrt.dll`
* OpenCL: use the newest supported OpenCL version
* GPU: report `deviceId` in JSON output
* OpenCL (Linux): fix crashing on AlpineLinux
* OpenCL: don't use NULL as platform id
* OpenCL: use strong typing
* OpenCL: fix building when OpenCL is disabled
* OpenCL: fix building on non-apple platforms
* GPU: support detect gpu devices with OpenCL
* CMake: enable OpenCL detection on Android
* OpenCL: detect GPU info
* CMake: remove unused dependencies
* CI (Windows): add missing opencl headers
* Add the missing '--users-myself-only' option in bash completions (#1027)
* Packaging: update debian stuff [ci skip]
* Doc: update readme; fix typo [ci skip]
* Release: v2.16.0
* Presets: add `Inspired by` [ci skip]
* Presets: add a new example
* Doc: update changelog [ci skip]
* LocalIP: support MTU in `localip-format`
* OS (Windows): set `idLike` to `Windows`
* Logo (Builtin): update arch3
* Logo: Create arch3.txt (#1022)
* SunOS: remove unused files [ci skip]
* CI: add SunOS
* CMake (SunOS): enable more things
* OS (SunOS): don't parse unstructured text
* CPU (SunOS): remove trailing `\0`
* GPU (SunOS): parse `scanpci -v`, which doesn't require root permission
* SunOS: improve WM detection
* SunOS: support NetIO detection
* OpenGL: print used ogl library
* SunOS: support DiskIO
* SunOS: support CPUUsage detection
* CPUUsage (BSD): fix totalAll calculation
* SunOS: support MTU & MAC addr detection
* SunOS: detect default route, so that LocalIP module works
* SunOS: support disk detection; fix a small bug
* SunOS: support swap & opengl detection
* SunOS: support memory usage detection
* CPU (SunOS): optimise ncpu detection
* SunOS: support loadavg detection
* InitSystem (SunOS): fix crashes
* SunOS: enable a lot of features
* SunOS: support shell & terminal detection
* Platform (Linux): fix invalid call to `realpath(3)`
* SunOS: support InitSystem
* Editor: detect version of pluma
* SunOS: support GPU detection
* Android: fix build
* SunOS: support CPU & packages detection
* SunOS: make SMBIOS related modules work
* Fastfetch: make it compile on SunOS
* LocalIP: detect MTU
* Logo: Added logos (standard and small) for RedOS (#1015)
* Logo: Add support for Manjaro ARM to logo detection (#1013)
* Presets: add a new example [ci skip]
* Presets: update `examples/20`
* Loadavg: add option `--loadavg-compact` and `--loadavg-percent-<color>`
* Users: add config gen for `myselfOnly`
* DNS: add option `--dns-show-type`
* Presets: dont show empty mac addrs
* Presets: print DNS info in `examples/20`; optimise
* DNS: print IPv4 first
* DNS (Windows): add support
* DNS (Linux): parse `/etc/resolv.conf` directly
* DNS: add new module
* Media (macOS): optimise
* OS (macOS): add code name of Sequoia
* Presets: add a new example
* Users: add new option `--users-myself-only`
* Fastfetch: fix `display.bar.border{Left,Right}` doesn't work in JSON config
* Media (Windows): fix compiling for GCC
* Media (Windows): finalize Windows support
* Media (Windows): build winrt stuff statically
* Media (Windows): detect with external DLL
* Builtin (Logo): add tuxdeo
* OS (Linux): don't priortitize `lsb-release` over `os-release`
* Sound (Linux): trim white spaces in device name
* Logo (Mauna): add new logo
* CPUCache (Linux): report error if cache size is unavailable (Android)
* CPUCache: silence warnings
* CI: add riscv64 build
* Presets: add one more example [ci skip]
* Packaging: update debian stuff [ci skip]
-------------------------------------------------------------------
Sun Jun 16 00:21:51 UTC 2024 - Egor Kuznetsov <egor.kuznetsov.26@gmail.com>
- Sync deps with factory
-------------------------------------------------------------------
Sun Jun 16 00:18:06 UTC 2024 - egor.kuznetsov.26@gmail.com
- Update to version 2.15.0:
* CPUCache: silence CodeQL warnings
* SMBIOS: ignore more trashes
* Release: v2.15.0
* OS (Linux): don't display duplicate entries
* OS (Linux): fix kubuntu detection
* Global: better handling locales
* Doc: update changelog
* Global: only enable locale if necessary
* Doc: update changelog [ci skip]
* Presets: update examples [ci skip]
* Packages (Linux): Improve speed of Guix package detection. (#999)
* DE (Linux): correctly capitalize GNOME
* Doc: update bug_report.md (#998)
* Percentage: add `--bar-border-{left|right}`; remove `--bar-border`
* Presets: update 9.jsonc to show percent bars
* Presets: add more examples
* Color: support `{#keys}` and `{#title}` in `--<module>-format`
* Presets: more examples
* InitSystem: fix memory leaks
* Doc: update changelog
* Doc: update cpucache and initsystem
* CPUCache: support format output
* wip
* Shell: fix fastfetch is detected as shell when abused
* Global (Linux): silence some compiler warnings
* CPUCache (Linux): detect cache line size
* CPUCache (macOS): detect cache line size
* CPUCache (FreeBSD): fix build
* CPUCache (Windows): detect cache line size
* CPUCache (macOS): add support
* CpuCache: move to a new module; add linux impl
* CPU (Windows): detect CPU caches
* Colors: normalize bright colors
* 3rdparty (igcl): write our implementation
* 3rdparty (mk_wcwidch): clarify it's MIT compatible
* Logo: fix while chars not visible in terminal of light theme
* Logo: use `-l '?'` to show a question mark as logo
* Presets: add examples/14
* Presets: add screenfetch
* Global: fix building
* Doc: update document of `--format json`
* Chore: strcasecmp => ffStrEqualsIgnCase
* Logo: code clean up
* Icons: make it possible to shorten the icons name
* Theme: make it possible to shorten the theme name
* Doc: document `--format json`
* WM (macOS): assume wm plugins are daemon process
* Remove shebangs from completions (#980)
* Add ability to skip installing license with INSTALL_LICENSE option (#981)
* Release: v2.14.0
* Vulkan: print reason on error
* Shell: don't try to get arg1 if python was executed without extra args
* Shell (macOS): better xonsh detection
* InitSystem: better systemd version detection
* CI: test initsystem
* InitSystem: resolve real path of exe path
* Processing (Linux): return errors more actively
* InitSystem: detect version
* InitSystem: add new module
* TerminalShell: move process info query logic into common place
* Doc: document `--color-separator`
* Doc: update changelog
* Doc: document named placeholders
* Display: add option `--color-separator`
* Presets: convert hard coded ANSI escape code to formatting placeholders
* Formatting: small optimizations
* Global: fix `outputColor` doesn't work if module keys are disabled
* Util: add `ffCharIsDigit` and use it
* Custom: detect & convert color placeholders (`{#xxx}`)
* Format: support named color placeholders
* Doc: update changelog
* Global: support for named format arguments
* Packages (Linux): Add Guix package manager. (#972)
* README: update screenshot [ci skip]
* Doc: update changelog [ci skip]
* Chore: remove unnecessary files [ci skip]
* README: add more installation methods [ci skip]
* CMake: we support FreeBSD only, not OpenBSD nor NetBSD
* Logo: Cereus Linux (#968)
* Revert "OS (Linux): remove special handling of Loc-OS"
* README: add example of FIGlet text logo [ci skip]
* Logo (File / Data): apply default color palettes
* Presets: update `examples/7.jsonc` to fix archlinux compatibility
* Editor (Windows): support editor version detection
* Board: fix typo (#965)
* CMake: remove useless code
* CMake: set link library dirs
* Fastfetch: disable `dlsym` function call if `dlopen` is disabled
* Packaging: update debian stuff
* CMake: be able to build as a dynamic linked binary
* Terminal (Windows): don't try to detect terminals in MSYS shell
* Percentage: support monochrome bar type
* Fastfetch: list available presets in exe path
* Fastfetch: don't detect `.conf` in `--list-config-paths`
* Library: prepare for static linking
* CI: try fixing musl build
* Editor: remove unused functions
* Editor: fix path detection not working on Android
* EDITOR: always print `exe` in JSON results
* Release: v2.13.2
* CI: test more functions
* Editor: add new module
* CI: add `bootmgr`
* GPU (Linux): don't query DRM drivers for driver version
* Completion (Fish): fix compatibility for old python versions
* GPU: write & use our own simplified `nvml` header
* OS (Linux): remove special handling of Loc-OS
* Logo (Builtin): Added CuerdOS support (#954)
* Presets: fix bad nerd icons
* DisplayServer (Wayland): don't display `eDP-1-unknown`
* CPU (FreeBSD): remove unused variables
* Release: v2.13.1
* CPU: add option `--show-pe-core-count`
* CPU: fix CPU frequency not displayed if `bios_limit` doesn't exist
* GPU (Linux): silence compiler warnings
* GPU: silence compiler warnings
* Release: v2.13.0
* CI: try fixing Win32 build
* Packages (Linux): try fixing nix-user detection
* Completions (Fish): disable enum value suggestion
* Doc: update help message of `--gpu-detection-method`
* CPU (Linux): detect bios limited frequency and print it by default
* GPU: change option `--gpu-force-vulkan` to `--gpu-detection-method`
* GPU (Linux): detect GPU core count and freq for asahi linux
* Logo (Builtin): fix KDE neon
* GPU (Linux): fix memory leaks
* Doc: update README [ci skip]
* CPU: better compatibility for Intel CPUs
* GPU (Linux): detect drm driver version
* CPU (Linux): take `--cpu-freq-ndigits` into account in `--cpu-format`
* GPU (Linux): improve perf
* GPU (Linux): improve Intel GPU detection code
* opencl.c: unbreak build on macOS with no OpenCL support (#940)
* CMakeLists: unbreak build with GCC on macOS (#941)
* OS (Linux): fix `BUILD_ID` not parsed
* macOS: Add support for old MacOS version (#936)
* CPU (Windows): fix silly mistake
* CPU (macOS): fix compiling
* CPU: print core count for different core types
* Disk (BSD): dont set createTime if stat fails to detect it
* OS (Linux): better code name detection
* Disk (FreeBSD): ensure createTime is inited
* Wifi (FreeBSD): fix bssid & status detection
* Logo (builtin): Fix TorizonCore logo colors (#934)
* Bootmgr (Android): fix compiling
* Revert "GPU (Windows): try removing limitation"
* Smbios: improve SMBIOS data reading code
* CPU (FreeBSD): fix core count detection
* Bootmgr (FreeBSD): silence compiler warnings
* CPU (BSD): fix max freq detection
* CPU (macOS): fix core count detection
* TerminalShell (Linux): ignore valgrind
* CPU (BSD): detect max / min frequency; detect core count of different core types
* Logo (Builtin): Added "Furreto Linux" support (#927)
* GPU (Windows): try removing limitation
* CPU (Windows): detect core count of different core types
* Util (Windows): add `nt.h` and use it
* CPU (macOS): detect core count for different core types
* CPU (Linux): detect core count for different core types
* TerminalShell: ignore clifm
* Kernel (Windows): detect old release code name for Windows 10
* Packages: don't break existing config
* Add Loc-OS Linux support (#926)
* Doc: update FAQ [ci skip]
* Doc: update FAQ [ci skip]
* Doc: update FAQ [ci skip]
* Doc: update FAQ section [ci skip]
* Doc: update JSON schema [ci skip]
* Logo (Builtin): fix build
* Logo (builtin): Add SpoinkOS Logo [FIXED!] (#925)
* Bios / Bootmgr: update descriptions
* Bootmgr (macOS): add support
* Bootmgr: reuse shared code
* Bootmgr (FreeBSD): add support
* Bootmgr: add new module
* Bios: move bootmgr detection to a new module
* Bios (Windows): detect secure boot state & boot manager
* Bios (Linux): detect boot manager & secure boot
* Logo: fix Manjaro Linux
* Doc: update changelog [ci skip]
* PhysicalMemory: add Ramaxel vendor id support
* Fastfetch: remove support of flag based config
* Release: v2.12.0
* JsonConfig: report row and column on JSON parsing errors
* Doc: update json_schema
* Presets: update [ci skip]
* LocalIP: add option `--localip-show-all-ips`
* Logo (Builtin): add Quirinux
* PhysicalMemory: Fix ram vendor names from ids. (#917)
* PhysicalMemory: try converting vendor ID to name
* GPU: a tiny optimization
* Presets: add archey
* Kernel: print kernel name in default format
* Logo: add macOS3
* PhysicalMemory: better Linux compatibility
* PhysicalMemory (FreeBSD): fix EFAULT errors
* Doc: update changelog
* PhysicalMemory: fix output format
* PhysicalMemory: detect ecc & bank locator
* PhysicalMemory: improve default output format; detect part number
* Logo (Builtin): fix alternate logo doesn't work with type builtin
* PhysicalMemory (FreeBSD): add support
* Smbios (Windows): check if getting SMBIOS data succeeds
* PhysicalMemory (Linux): add support
* PhysicalMemory: ignore trash values
* PhysicalMemory: add module to `ci.jsonc` and `all.jsonc`
* PhysicalMemory (macOS): add support
* PhysicalMemory: add new module
* Smbios: add struct layout check
* Logo: Add the openSUSE Slowroll distribution (#913)
* Image: support specifying `--logo-width` only for `--kitty-direct` and `--iterm`
* Config: support more color prefixes
* 🔧 JsonConfig: add missing `brightness` properties
* 🔧 JsonConfig: add dim colors to validation
* Terminal (macOS): fix compatibility with `(*term)` (#909)
* Networking (Windows): fix compiling
* Doc: update changelog (ci skip)
* Doc: update changelog
* PublicIP: add option `--publicip-ipv6`
* Presets: add loadavg to `all.jsonc` and `ci.jsonc`
* Loadavg (BSD): add missing headers
* Loadavg: add option `--loadavg-ndigits`
* Loadavg (BSD): use sysctl
* PublicIP / Weather: clarify error messages
* Display: rename `--temperature-*` to `--temp-*` as stated in help messages
* Loadavg (Android): fix compiling
* Logo: Fix dahliaOS detection (#906)
* Loadavg: new module
* Doc: update help message for `--module-output-color`
* Separator: add `--separator-output-color`
* Fastfetch: revert to module color after printing custom colors
* Fastfetch: support `--module-ouput-color` (WIP)
* Doc: remove duplicated entry
* Doc: default `--hide-cursor` to false
* Fastfetch: remove the long deprecated flag `--set` & ``-set-keyless`
* TerminalFont (Linux): searching for font config in st binary
* Terminal (Linux): fix exePath detection
* Presets: Update hardware.jsonc (#899)
* Release: v2.11.5
* Logo (Builtin): temp fix for openmandriva logo detection
* Doc: remove `--os-file` completely
* Release: v2.11.4
* OS (Linux): don't detect debian version on debian derived distros
* OS (Linux): detect pve & armbian
* CMake: add option `CUSTOM_OS_RELEASE_PATH`
* Doc: update README
* Logo (Builtin): add armbian
* Presets: fix neofetch
* JsonConfig: fix setting `size.ndigits` doesn't work
* Fastfetch: fix memory leaks when passing informative options
* CI: try fixing Linux armv7
* CI: build armv7 package using ubuntu22.04
* Camera: fix deprecation warning for macOS 14.0 hopefully
* Logo (Builtin): update ubuntu
* Presets: remove unsupported format placeholders
* CMake: enforce glibc version
* Fastfetch: enable pipe mode if `$NO_COLOR` is set
* Custom: don't print ANSI escape code in pipe mode
* Colors: print non-colored blocks in pipe mode
* Fastfetch: print non-colored logo in pipe mode
* Revert "FFstrbuf: avoid redundant checks (#881)" (#882)
* FFstrbuf: avoid redundant checks (#881)
* Terminal (macOS): fix Apple Terminal detection
* Doc: remove (kind of) outdated information
* Doc: metion ANSI 256 colors
* fastfetch: fix #868 (#871)
* Doc: update changelog (ci skip)
* Release: v2.11.3
* Logo (Image): partially revert 71cba24
* Logo (Image): ensure line ending is printed when printing errors
* Disk (Windows): use sub thread to check accessiblity of remote volumes.
* Battery (Windows): simplify code
* CMake: add CUSTOM_AMDGPU_IDS_PATH
* Update README.md again for same reason different location (#857)
* Update README.md about installing fastfetch on Debian/Ubuntu (#856)
* PhysicalDisk: fix temp output in custom formation
* PhysicalDisk: fix doubled output in custom formation
* Doc: update changelog
* Global: tidy json result formats
* Processing: trim `\r` on Windows
* OS (macOS): don't print build id
* OS (Linux): don't use `rolling` as os version
* OS (Linux): fix name detection for MX
* OS (Linux): fix OS detection for MX Linux (2nd attempt)
* Doc: update logo_request.md
* Chore: silience some warnings
* OS (Linux): Prioritize `lsb-release` over `os-release`
* Release: 2.11.2
* Logo (Builtin): add MX2 & fix mx distro detection
* Logo (Builtin): add missing `FF_LOGO_LINE_TYPE_SMALL_BIT` flags
* Logo (Builtin): fix distro name of DraugerOS
* Logo (Builtin): fix ascii file name
* Logo (Builtin): add KernelOS
* Shell: don't try detecting version of raw `sh` shell
* GPU (Linux): check NULL returned by opendir
* Logo (Image): only print error if `--show-error` is specified
* Logo: disable image logos in ssh and tmux sessions
* Doc: update man page
* Packages (Linux): check xdg state home for nix user packages (#844)
* Doc: update changelog
* CI: try build for Linux armv7
* Release: v2.11.1
* Battery (Android): fix uninitialized variables
* Shell (Windows): ignore hyfetch
* Shell (Linux): don't detect hyfetch as shell
* DisplayServer (Linux): silence compiler warnings
* Doc: clarify `--disk-folders` overrides other disk options
* Disk (Windows): don't rely on env vars
* Presets: add a new example
* Custom: make `--custom-format` optional
* Disk (Windows): make `/` an alias of `C:\` for `--disk-folders`
* Doc: fix incorrect man page
* Packages (Linux): Extended Source Mage support (#825)
* CI: fix release script
* Release: v2.11.0
* Camera (macOS): fix building on old xcode
* Camera (macOS): try silence system deprecation warnings
* Disk: only detect folders that specified by `--disk-folders`
* Processing: suggest increasing `--processing-timeout` when child process timeouts
* Revert "Disk: init variables"
* Revert "Disk (Windows): add `--disk-ignore-remote`"
* CPU (Windows): silence compiler warnings
* Fastfetch: make config in jsonc overridable
* GPU (Linux): constantly use `*_vis_*`
* Disk: init variables
* Doc: update bug report template
* Disk (Windows): add `--disk-ignore-remote`
* Release: v2.10.3
* Packages: update help messages
* GPU (Linux): fix copy & paste error
* GPU (Linux): ignore `.` when enumerating directories
* GPU (Linux): greatly improve detection for AMD cards
* GPU (Linux): disable vmem detection
* Packages (Linux): optimise nix detection code
* Packages (nix): use hash to cache count and process count manually (#817)
* Doc: update changelog
* Common: slience compiler warnings
* CPU (Windows): fix silly bug...
* TerminalShell (Linux): actually fix #814
* CPU (Windows): detect max CPU freq with `CPUID` instruction
* Separator: add fast path for ascii strings
* Init: tweaks
* TerminalShell (Linux): fix nixos wrapped process name
* Wifi (Linux): try fixing #811
* CMake: fix #810
* Fastfetch: default `hideCursor` to false
* Packages: support printing total number of nix / flatpak / brew packages
* Display (Linux): don't use `*-unknown` as name
* CI: test with no dependencies installed
* CI: build Linux binaries with Ubuntu 20.04 again...
* Swap (Windows): fix x86-32 (v2)
* bedrock version (#809)
* Swap (Windows): fix detection in i686 build
* CI (macOS): revert back to macos 12 before we know what was happening
* JsonSchema: add missing modules
* allow generation of either deb or rpm package only (#807)
* DisplayServer (Linux): basic support for ukui
* Release: v2.10.2
* DisplayServer (Linux): fix silly bug that detect x11 as wayland
* Release: v2.10.1
* DE (Linux): silence warnings
* Fix build with ENABLE_DBUS=OFF
* Release: v2.10.0
* Doc: update changelog
* DisplayServer (Linux): fix compiling for old wayland version
* DisplayServer (Linux): fix crash
* DisplayServer (Linux): refactor & support wlroots protocol
* Doc: update changelog
* IO: don't print ANSI escape codes in `--pipe` mode
* GPU: detect max freq instead of current freq
* 3rdparty: update
* CPU (Windows): try detecting invalid data in SMBIOS
* Disk (Linux): hide drivers folder in WSL
* Host (Linux): improve performance of WSL version detection
* Terminal (FreeBSD): implement kitty version fast path for FreeBSD
* Chore: silence compiler warnings
* Chore: oops...
* GPU (Linux): fix freq detection
* Doc: update changelog
* Display: add option `--ts-version` to hide terminal and shell version
* Shell: remove unused vars
* GPU (Linux): bring back `pciDetectGPUs`
* GPU (Linux): improve detection performance of Apple Silicon
* Terminal (Linux): make fast path of kitty version detection actually work
* Display (Linux): don't display `(null)`
* Doc: update changelog
* Display (Linux): detect refresh rate for DRM method
* TerminalShell (Linux): if `/bin/sh` is set to default shell, use it
* Terminal (Linux): optimise kitty version detection
* TerminalShell (Windows): fix compiling
* Display (Linux): `wlr-randr` for hyprland
* DE (Linux): improve kde version detection performance
* DE (Linux): tag `gnome-shell --version` a slow operation
* Terminal (Linux): improve performance of kitty version detection
* DE (Linux): better Gnome version detection
* common/properties: we don't use threads any more
* GPU (Linux): try detecting vmem with gpu kernel module
* CI: update artifact name for musl builds
* CI: add musl build
* Packaging: update debian stuff
* README: metion linuxbrew
* README: remove AUR as it's very outdated
* Release: v2.9.2
* Packages: fix parsing of JSON config; fix wording of json_schema
* JsonSchema: don't generate error at custom options
* Packages: fix parsing of option `--packages-disabled`
* Shell: ignore `time`
* Presets: fix compatibility of newer nerd fonts
* Doc: update changelog
* Logo (Builtin): add openSUSE MicroOS
* Logo: fix logo color of AOSC OS (#791)
* Fix: bad LainOS logo (#788)
* Disk (Android): fix build
* Doc: update issue templates
* Doc: add code of conduct
* Terminal: tidy
* Presets: fix #786 [ci skip]
* Global: use time string when generating JSON result
* Disk (Windows): detect create time
* Disk (Linux): detect create time
* Disk (macOS): detect create time
* Doc: update changelog
* fastfetch: always provide trailing new line when generating JSON output
* 3rdparty (yyjson): upgrade to 0.9.0
* Terminal (Windows): ignore `far.exe`
* TerminalFont (Windows): better portable mode detection of Windows Terminal
* Platform: fix a memory leak (#782)
* Release: v2.9.1
* Cursor: tidy
* Revert "fastfetch: add the missing new-line in config files (#772)"
* Cursor (Linux): support hyprcursor detection
* Cursor: tidy
* Doc: update changelog
* TerminalFont (Linux): support weston-terminal
* Release: v2.9.0
* LocalIP (BSD): fix build
* TerminalFont: use system mono font if no config file is find
* Doc: update changelog
* LocalIP: add new option `localip-show-prefix-len`
* LocalIP: support network prefix detection for IPv6
* LocalIP: print all IPs if multiple IPs are assigned to the same interface
* LocalIP (Linux): fix network prefix detection when the value is greater than 24
* Packages (Linux): add `am` support
* fastfetch: add the missing new-line in config files (#772)
* Flashfetch: add the skipped "host" option from "Flashfetch: simplify implementation" (#770)
* Version: detect apple clang
* Doc: update changelog
* Terminal (Linux): support weston-terminal version detection
* Terminal (Linux): support Lxterminal version detection
* Doc: update changelog [ci skip]
* Packaging: update debian stuff
-------------------------------------------------------------------
Mon Apr 01 16:32:00 UTC 2024 - egor.kuznetsov.26@gmail.com
- Update to version 2.8.10:
* TerminalShell (Windows): adjustments
* Terminal (Windows): don't use wininit as terminal
* Disk (Windows): use MS-DOS device name as mountFrom result, instead of useless GUID volume name
* Release: v2.8.10
* CI: try fixing Windows build
* Font (Linux): try fixing style detection
* GPU (Apple): always use metal to detect vmem
* Chore: simpify gitignore [ci skip]
* Windows: update version.rc
* Doc: update changelog
* PublicIP: error out if non-http protocol is specified
* Networking: avoid short recv
* Network (Windows): fix compiling
* Networking: add timeout support for TCP connecting
* Networking: report detailed error messages; support `--thread false` for debugging
* Doc: update changelog
* Network: trim trailing white spaces
* Terminal (Linux): ignore `chezmoi`
* CPU (Android): don't detect manufactor of Qualcomm as ARM
* Presets: a new example
* Logo: fix colors of arco linux
* CPU (FreeBSD): don't display 0.00 GHz
* Packaging: update debian stuff
-------------------------------------------------------------------
Fri Mar 15 23:01:58 UTC 2024 - egor.kuznetsov.26@gmail.com
- Update to version 2.8.9:
* Release: v2.8.9
* fastfetch: remove unused `#include`s
* Doc: update changelog
* CPU (Linux): bing cpuMHz back
* CPU: bring min frequency back & code optimizations
* CPU (Linux): fix detection when `.../base_frequency` doesn't exist
* Logo (Chafa): fix blurry result when specifying both width and height
* Logo: fix proxmox
* CPU: rename min frequency to base frequency
* CPU: detect base frequency
* CI (macOS): fix build
* Doc: update changelog
* Host (Apple): add MacBook Air 2024
* Fastfetch: print final new line in `--format json`
* Terminal (Linux): actually ignore `SessionLeader`
* Chore: update screenshots
* Package: update debian stuff
* Doc: update changelog
* Users (Linux): fix detection of client ip
* Release: v2.8.8
* Terminal (Linux): ignore `SessionLeader`
* CPU (Linux): don't crash if `/sys/devices/system/cpu/cpufreq/` doesn't exist
* DisplayServer (Linux): fix old libdrm version compatibility
* Display (Linux): fix width being detected as height when using libdrm
* Doc: update changelog
* Doc: update README
* Vulkan: try fixing old vulkan-header library compatibility
* Printing: merge `ffPrintError` and `ffPrintErrorString`
* Fastfetch: fully resolve the format arg num issue
* Disk: fix segfault with `--help disk-format`
* fastfetch: revert changes of FASTFETCH_DATATEXT_STRUCTURE
* Doc: rename `help.txt` to `help_footer.txt`
* Fastfetch: small performace optimization
* Doc: fix truncated texts
* Completions (Fish): fix old version compatibility
* Release: v2.8.7
* Doc: update changelog
* Uptime (Android): fix implementation
* Terminal (Linux): detect zellij version
* fix postmarketos logos (#742)
* Brightness (Linux): fix ddcutil 2.1 compatibility
* GPU (Linux): fix memleaks
* CMake: add more debug flags
* CPU (Linux): fix max / min frequency detection for multi policy systems
* Packaging: update debian stuff
* JsonSchema: disallow additional properties
* Doc: update changelog
* TerminalFont (Linux): support warp terminal
* Terminal (Linux): support warp version detection
* CI: build for FreeBSD aarch64 too
* Release: v2.8.6
* CI: fix windows build
* Shell (Linux): always detect tty id
* Terminal: detect tty name
* GPU (Linux): Support specifying custom `pci.ids` path for Linux
* Temps: rename `display.temperature` to `display.temp`
* Temps: support color range customization
* Percent: rename FFPercentConfig to FFColorRangeConfig
* Terminal: better tmux version detection
* CMake (macOS): force `dlopen` searching for `/usr/local/lib`
* Global: use FASTFETCH_TARGET_DIR_USR where applicable
* Temp: Display: support better temperature value formatting
* Percent: tidy
* GPU (Linux): revert `show sub-device if available`
* Release: v2.8.5
* DiskIO / NetIO: fix uninitialized variables
* Doc: update ubuntu ppa
* Packaging: update debian stuff
* Release: v2.8.4
* Doc: update changelog
* Disk (Linux): ensure only physical devices are detected
* Display: `--display-compact-type` support `*-with-refresh-rate`
* Display: add option `--display-order`
* FFstrbuf: remove ffStrbufCompAlphabetically
* Packages: add ability to disable specified package manager
* Package: code cleanup
* Disk (Linux): try fixing multidevice bcachefs filesystem compatibility
* Doc: fix invalid commands
* Fix mistake in README.md (#730)
* NetIO: add option `--netio-detect-total`
* DiskIO: add option `--diskio-detect-total`
* Colors: support JSON config generation
* Colors: don't print extra empty lines
* Platform (Windows): small optimization
* Platform (Windows): don't assume x86 as i686
* Colors: support `block` related settings
* TerminalFont (Windows): support portable Windows Terminal settings
* Github: update `ISSUE_TEMPLATE`
* CPU (Linux): don't segfault if we fail to find `Vendor ID` in `lscpu`
* CMake: make artifact file names consistant
-------------------------------------------------------------------
Sat Feb 17 22:30:41 UTC 2024 - Egor Kuznetsov <egor.kuznetsov.26@gmail.com>
- Initial build for fastfetch