Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
90 commits
Select commit Hold shift + click to select a range
d21048c
Presets: update examples/{24,26} [ci skip]
CarterLi Mar 21, 2025
d9d34cc
Terminal (macOS): fix Warp Terminal pid detection
CarterLi Mar 21, 2025
8905962
Packaging: update debian stuff [ci skip]
CarterLi Mar 21, 2025
d4b175b
Logo (Builtin): Change WiiLinuxNgx to more generic name (#1633)
techflashYT Mar 21, 2025
41d6187
Wifi (FreeBSD): use ioctl to improve performance
CarterLi Mar 22, 2025
ab1bfff
util/debug: add missing headers
CarterLi Mar 23, 2025
a3f50f3
Smbios (OpenBSD): add support for legency BIOS
CarterLi Mar 23, 2025
0952d79
Smbios: add verbose debug logs
CarterLi Mar 23, 2025
a9f5722
BIOS (OpenBSD): check bios type
CarterLi Mar 23, 2025
1c719fa
Bootmgr (BSD): add support for OpenBSD and NetBSD
CarterLi Mar 23, 2025
80033b6
Wifi (DragonFly): fix building
CarterLi Mar 23, 2025
f7058cd
Wifi (Linux): add verbose logs
CarterLi Mar 16, 2025
6694388
Logo (Builtin): fix opensuse-tumbleweed_small
CarterLi Mar 23, 2025
4d58d1b
Smbios (OpenBSD): add comments for UEFI systems [ci skip]
CarterLi Mar 23, 2025
9eca6e0
Bootmgr: report boot order
CarterLi Mar 23, 2025
6dd1805
IO: don't suppress IO in debug mode
CarterLi Mar 23, 2025
0ae5fce
GPU (Windows): add display-library for future use
CarterLi Mar 23, 2025
cc246ea
GPU: prepare for memory type & shared memory usage detection
CarterLi Mar 24, 2025
c9a1765
GPU (Windows): support memory type detection for Intel dGPUs
CarterLi Mar 24, 2025
8dafd8f
GPU (Windows): rewrite implementation for AMD GPUs using ADL SDK
CarterLi Mar 24, 2025
ae3c15b
GPU (Windows): support VMEM type detection via nvapi
CarterLi Mar 24, 2025
2b20ed8
GPU: update JSON result structure; fix segfault and memleaks
CarterLi Mar 24, 2025
8681d2f
GPU (Windows): fix code smells
CarterLi Mar 24, 2025
7b5dc58
CPU (Linux): fix CPU detection on some PPC platforms (#1640)
techflashYT Mar 25, 2025
0a0c174
GPU (macOS): fix code smell
CarterLi Mar 25, 2025
093f7e4
Battery (macOS): fix manufacture date detection
CarterLi Mar 25, 2025
48dd597
Battery (Linux): fix critical state detection
CarterLi Mar 25, 2025
c77fb71
Battery (NetBSD): report remaining time
CarterLi Mar 25, 2025
e474a47
GPU (General): fix GPU device type detection
CarterLi Mar 25, 2025
88e193e
GPU: fix code smell
CarterLi Mar 25, 2025
bf17f2b
LocalIP: change `{name}` to `{ifname}` in `--localip-key-format` for …
CarterLi Mar 25, 2025
7562e05
Chore: fix a lot code smell
CarterLi Mar 25, 2025
eca9f62
Separator: fix `outputColor` doesn't work when `length` is set
CarterLi Mar 25, 2025
17556c7
Util/debug: add missing `#pragma once`
CarterLi Mar 26, 2025
e68a947
Disk (SunOS): remove creation time detection support
CarterLi Mar 26, 2025
0d4f154
Chore: fix code smell
CarterLi Mar 26, 2025
1129ed9
Host (macOS): add new models; fix an invalid model ID
CarterLi Mar 26, 2025
de5ef38
Global: fix code smells
CarterLi Mar 26, 2025
ba4ec47
GPU (Windows): added verbose logs
CarterLi Mar 26, 2025
e2ec2c6
GPU (Windows): fix `ADL2_Adapter_AdapterInfoX3_Get` result test
CarterLi Mar 26, 2025
f139148
GPU (Windows): add `OverdriveN` functions for AMD
CarterLi Mar 26, 2025
d2b3a07
GPU (Windows): actually use correct OD fns for recent AMD GPUs
CarterLi Mar 27, 2025
e736479
Host (Windows): fix build on WoA
CarterLi Mar 27, 2025
3fb773e
Gamepad / Mouse / Keyboard (FreeBSD): fix memleaks
CarterLi Mar 27, 2025
bdaf303
Keyboard (FreeBSD): fall back to KDGKBINFO if usbhid fails
CarterLi Mar 27, 2025
4b6f2a9
Gamepad / Keyboard / Mouse (FreeBSD): break detection earlier
CarterLi Mar 27, 2025
1d7b212
Media: fix code smells
CarterLi Mar 27, 2025
b87a367
DNS (Linux): add systemd-resolved support; add verbose logs
CarterLi Mar 28, 2025
ec18363
DNS (macOS): detect DNS entries by SystemConfiguration
CarterLi Mar 28, 2025
4fccad5
Disk (macOS): silense compiler warnings
CarterLi Mar 28, 2025
88d616e
GPU (Windows): try more OD funcs; add more verbose logs
CarterLi Mar 27, 2025
eec9a26
TerminalFont (Windows): support Warp Terminal
CarterLi Mar 28, 2025
49725c2
Doc: update changelog [ci skip]
CarterLi Mar 28, 2025
5c9f184
GPU (Windows): use ODN as OD7; fix `ADL2_Overdrive8_Current_Setting_G…
CarterLi Mar 28, 2025
187059d
GPU (Windows): fix max frequency detection for AMD ODN
CarterLi Mar 29, 2025
e05ac79
CI: build in debug mode
CarterLi Mar 26, 2025
f34d51d
Terminal (Windows): fix file version detection
CarterLi Mar 30, 2025
3054c66
Logo (Builtin): change name of Xray-OS
Xray-OS Mar 30, 2025
d11235b
Logo (Ascii): Change Nexa Linux logo (#1653)
komaru-meow Mar 31, 2025
c64cbf5
fastfetch: load config from fastfetch binary path
CarterLi Mar 31, 2025
9535b4d
Chore (Windows): silense compiler warnings
CarterLi Mar 31, 2025
b0d0c74
Doc: update changelog [ci skip]
CarterLi Mar 31, 2025
47c6588
Sound: fix typo and mem leaks
CarterLi Mar 31, 2025
a091d20
Swap: fix code smells
CarterLi Mar 31, 2025
1133cb6
Swap (OpenBSD): fix mem leaks
CarterLi Mar 31, 2025
da0eedf
Swap (Windows): support multiple paging files
CarterLi Mar 31, 2025
98665d1
Revert "CI: build in debug mode"
CarterLi Mar 31, 2025
71b05d2
Doc: update changelog [ci skip]
CarterLi Mar 31, 2025
07c61f7
InitSystem (Haiku): set pid=0 if fails to detect init pid
CarterLi Mar 31, 2025
031aa98
TPM (macOS): add support
CarterLi Mar 31, 2025
fe46159
Uptime (NetBSD): fix boot time calcuation
CarterLi Mar 31, 2025
27fe997
Users (Windows): support IPv6 client IP
CarterLi Mar 31, 2025
7e03b03
Users (Linux): support IPv6 client addr
CarterLi Mar 31, 2025
abe7882
PhysicalMemory (Linux): code refactor
CarterLi Mar 31, 2025
3d7c631
Wifi: fix code smells
CarterLi Apr 1, 2025
d0ca944
Netif (Linux): support default route detection for ipv6
CarterLi Apr 1, 2025
ac2aba0
Threading: fix timeout calcuation
CarterLi Apr 1, 2025
3d3669a
FFlist: use `uint8_t` instead of `char` to store raw data
CarterLi Apr 1, 2025
45aecae
Util (Linux): fix executable file check
CarterLi Apr 1, 2025
663650c
Util (Windows): fix possible errors in `Unicode.c`
CarterLi Apr 1, 2025
dc5f2ac
Util (Windows): fix mem leaks
CarterLi Apr 1, 2025
846f4c0
DisplayServer (Linux): silence compiler errors
CarterLi Apr 1, 2025
52fdabe
Uptime: round seconds to the nearest minute
CarterLi Apr 1, 2025
be9cf00
Release: v2.40.0
CarterLi Apr 1, 2025
e64a44a
WM (Linux): fix (?) Hyprland version detection
CarterLi Apr 1, 2025
760e829
CI: remove Dragonfly BSD
CarterLi Apr 2, 2025
d650f67
WM (Linux): correctly fall back to calling `wm --version` if `ffBinar…
CarterLi Apr 2, 2025
5dfd267
Binary: add comments
CarterLi Apr 2, 2025
c957ca7
WM (Linux): query Hyprland version from hyprland dev header
CarterLi Apr 2, 2025
ceecb39
WM (Linux): fix https://github.com/fastfetch-cli/fastfetch/issues/165…
CarterLi Apr 2, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
39 changes: 0 additions & 39 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -520,41 +520,6 @@ jobs:
name: fastfetch-freebsd-amd64
path: ./fastfetch-*.*

dragonfly-amd64:
name: DragonFly-amd64
runs-on: ubuntu-latest
permissions:
security-events: write
contents: read
steps:
- name: checkout repository
uses: actions/checkout@v4

- name: run VM
uses: vmactions/dragonflybsd-vm@v1
with:
usesh: yes
prepare: |
uname -a
pkg update
pkg install -y cmake git pkgconf binutils wayland vulkan-headers vulkan-loader libxcb libXrandr libX11 libdrm glib dconf dbus sqlite3-tcl xfce4-conf egl opencl ocl-icd v4l_compat chafa libelf

run: |
cmake -DSET_TWEAK=Off -DBUILD_TESTS=On -DENABLE_EMBEDDED_PCIIDS=On -DENABLE_EMBEDDED_AMDGPUIDS=On .
cmake --build . --target package --verbose -j4
./fastfetch --list-features
time ./fastfetch -c presets/ci.jsonc --stat false
time ./fastfetch -c presets/ci.jsonc --format json
time ./flashfetch
ldd fastfetch
ctest --output-on-failure

- name: upload artifacts
uses: actions/upload-artifact@v4
with:
name: fastfetch-dragonfly-amd64
path: ./fastfetch-*.*

openbsd-amd64:
name: OpenBSD-amd64
runs-on: ubuntu-latest
Expand Down Expand Up @@ -659,9 +624,6 @@ jobs:
- name: copy necessary dlls
run: cp /clang64/bin/{OpenCL,vulkan-1}.dll .

- name: download amd_ags
run: curl -LO https://github.com/GPUOpen-LibrariesAndSDKs/AGS_SDK/raw/master/ags_lib/lib/amd_ags_x64.dll

- name: list features
run: ./fastfetch --list-features

Expand Down Expand Up @@ -709,7 +671,6 @@ jobs:
- freebsd-amd64
- openbsd-amd64
- netbsd-amd64
- dragonfly-amd64
- sunos-amd64
- windows-amd64
permissions:
Expand Down
43 changes: 42 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,44 @@
# 2.40.0

Changes:
* In `key-format` of `LocalIP` module, `{name}` has been renamed to `{ifname}` for consistency (LocalIP, #1639)

Features:
* Support Warp Terminal font detection (TerminalFont, Windows)
* Support more AMD GPU information using ADL SDK, including memory type detection (GPU, Windows)
* Support Intel dGPU memory type detection (GPU, Windows)
* Support Nvidia VMEM type detection via NVAPI (GPU, Windows, #993)
* Support Boot manager detection for OpenBSD and NetBSD (Bootmgr, OpenBSD / NetBSD)
* Use `SystemConfiguration` for DNS entries detection (DNS, macOS)
* Add `systemd-resolved` support for DNS module (DNS, Linux, #1646)
* Improve performance and accuracy of Wifi detection on FreeBSD using ioctl (Wifi, FreeBSD)
* Support remaining time reporting for batteries on NetBSD (Battery, NetBSD)
* Add new Mac models support (Host, macOS)
* Load config from fastfetch binary path with `--config` option (#1649)
* Support TPM detection on macOS (TPM, macOS)
* Support IPv6 client address report (Users, Linux / Windows)
* Support default route detection for IPv6 (LocalIP, Linux)
* Round seconds to the nearest minute to match the behavior of `uptime` command (Uptime)

Bugfixes:
* Fix `outputColor` not working when `length` is set in Separator module (#1644)
* Fix CPU detection on PowerPC platforms (#1640, CPU, Linux)
* Fix battery manufacture date detection (Battery, macOS)
* Fix battery critical state detection (Battery, Linux)
* Fix Warp Terminal PID detection (Terminal, macOS)
* Remove disk creation time detection support on SunOS as ctim is file status change timestamp, not creation time (Disk, SunOS)
* Fall back to KDGKBINFO if `usbhid` fails (Keyboard, FreeBSD)
* Fix multiple paging file support (Swap, Windows)
* Fix memleaks, code smells in multiple modules
* Fix boot time calculation on NetBSD (Uptime, NetBSD)
* Temporarily fix Hyprland version detection (WM, Linux, #1657)

Logo:
* Fix opensuse-tumbleweed_small (#1636)
* Change WiiLinuxNgx to more generic name with aliases Wii-Linux and WiiLinux (#1633)
* Change name of Xray-OS to Ada (#1651)
* Change Nexa Linux logo (#1653)

# 2.39.1

Bugfixes:
Expand Down Expand Up @@ -336,7 +377,7 @@ Features:
* Support tilix version detection (Terminal, Linux)
* Support percent type config in module level. Example:

```json
```jsonc
{
"type": "memory",
"percent": {
Expand Down
24 changes: 13 additions & 11 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
cmake_minimum_required(VERSION 3.12.0) # target_link_libraries with OBJECT libs & project homepage url

project(fastfetch
VERSION 2.39.1
VERSION 2.40.0
LANGUAGES C
DESCRIPTION "Fast neofetch-like system information tool"
HOMEPAGE_URL "https://github.com/fastfetch-cli/fastfetch"
Expand Down Expand Up @@ -708,7 +708,6 @@ elseif(FreeBSD)
src/detection/uptime/uptime_bsd.c
src/detection/users/users_linux.c
src/detection/wallpaper/wallpaper_linux.c
src/detection/wifi/wifi_bsd.c
src/detection/wm/wm_nosupport.c
src/detection/de/de_linux.c
src/detection/wmtheme/wmtheme_linux.c
Expand All @@ -720,10 +719,12 @@ elseif(FreeBSD)
if(DragonFly)
list(APPEND LIBFASTFETCH_SRC
src/detection/bluetooth/bluetooth_nosupport.c
src/detection/wifi/wifi_nosupport.c
)
else()
list(APPEND LIBFASTFETCH_SRC
src/detection/bluetooth/bluetooth_bsd.c
src/detection/wifi/wifi_bsd.c
)
endif()
elseif(NetBSD)
Expand All @@ -739,7 +740,7 @@ elseif(NetBSD)
src/detection/bluetooth/bluetooth_nosupport.c
src/detection/bluetoothradio/bluetoothradio_nosupport.c
src/detection/board/board_nbsd.c
src/detection/bootmgr/bootmgr_nosupport.c
src/detection/bootmgr/bootmgr_bsd.c
src/detection/brightness/brightness_nbsd.c
src/detection/btrfs/btrfs_nosupport.c
src/detection/chassis/chassis_nbsd.c
Expand Down Expand Up @@ -817,22 +818,22 @@ elseif(OpenBSD)
src/common/processing_linux.c
src/common/sysctl.c
src/detection/battery/battery_obsd.c
src/detection/bios/bios_nosupport.c
src/detection/bios/bios_windows.c
src/detection/bluetooth/bluetooth_nosupport.c
src/detection/bluetoothradio/bluetoothradio_nosupport.c
src/detection/board/board_nosupport.c
src/detection/bootmgr/bootmgr_nosupport.c
src/detection/board/board_windows.c
src/detection/bootmgr/bootmgr_bsd.c
src/detection/brightness/brightness_obsd.c
src/detection/btrfs/btrfs_nosupport.c
src/detection/chassis/chassis_nosupport.c
src/detection/chassis/chassis_windows.c
src/detection/cpu/cpu_obsd.c
src/detection/cpucache/cpucache_nosupport.c
src/detection/cpucache/cpucache_shared.c
src/detection/cpuusage/cpuusage_bsd.c
src/detection/cursor/cursor_linux.c
src/detection/disk/disk_bsd.c
src/detection/dns/dns_linux.c
src/detection/physicaldisk/physicaldisk_nosupport.c
src/detection/physicalmemory/physicalmemory_nosupport.c
src/detection/physicalmemory/physicalmemory_linux.c
src/detection/diskio/diskio_obsd.c
src/detection/displayserver/linux/displayserver_linux.c
src/detection/displayserver/linux/drm.c
Expand Down Expand Up @@ -889,6 +890,7 @@ elseif(OpenBSD)
src/detection/zpool/zpool_nosupport.c
src/util/platform/FFPlatform_unix.c
src/util/binary_linux.c
src/util/smbiosHelper.c
)
elseif(APPLE)
list(APPEND LIBFASTFETCH_SRC
Expand All @@ -911,7 +913,7 @@ elseif(APPLE)
src/detection/cpuusage/cpuusage_apple.c
src/detection/cursor/cursor_apple.m
src/detection/disk/disk_bsd.c
src/detection/dns/dns_linux.c
src/detection/dns/dns_apple.c
src/detection/physicaldisk/physicaldisk_apple.c
src/detection/physicalmemory/physicalmemory_apple.m
src/detection/diskio/diskio_apple.c
Expand Down Expand Up @@ -945,7 +947,7 @@ elseif(APPLE)
src/detection/terminalshell/terminalshell_linux.c
src/detection/terminalsize/terminalsize_linux.c
src/detection/theme/theme_nosupport.c
src/detection/tpm/tpm_nosupport.c
src/detection/tpm/tpm_apple.c
src/detection/uptime/uptime_bsd.c
src/detection/users/users_linux.c
src/detection/wallpaper/wallpaper_apple.m
Expand Down
6 changes: 6 additions & 0 deletions debian/changelog
Original file line number Diff line number Diff line change
@@ -1,3 +1,9 @@
fastfetch (2.39.1) jammy; urgency=medium

* Update to 2.39.1

-- Carter Li <[email protected]> Fri, 21 Mar 2025 11:02:19 +0800

fastfetch (2.39.0ubuntu1) jammy; urgency=medium

* Remove unwanted debugging code
Expand Down
2 changes: 1 addition & 1 deletion debian/files
Original file line number Diff line number Diff line change
@@ -1 +1 @@
fastfetch_2.39.0ubuntu1_source.buildinfo universe/utils optional
fastfetch_2.39.1_source.buildinfo universe/utils optional
22 changes: 11 additions & 11 deletions presets/examples/24.jsonc
Original file line number Diff line number Diff line change
Expand Up @@ -28,38 +28,38 @@
{
"type": "title",
"key": "{#90}{$1}│ {#92}User {#90}│",
"format": "{$2}{$3}{user-name} {#2}[{home-dir}]"
"format": "{$2}{$3}{user-name} {#2}[{home-dir}]"
},
{
"type": "users",
"key": "{#90}{$1}│ {#92}Users {#90}│",
"myselfOnly": false,
"format": "{$2}{$3}{1}@{host-name}{/host-name}localhost{/}{?client-ip} {#2}[IP:{client-ip}]{?} {#2}[Login time: {login-time}]",
"format": "{$2}{$3}{1}@{host-name}{/host-name}localhost{/}{?client-ip} {#2}[IP:{client-ip}]{?} [Login time: {login-time}]"
},
{
"type": "datetime",
"key": "{#90}{$1}│ {#92}Datetime {#90}│",
"format": "{$2}{$3}{year}-{month-pretty}-{day-in-month} {hour-pretty}:{minute-pretty}:{second-pretty} {#2}{weekday} {#2}[W{week}] {#2}[UTC{offset-from-utc}]"
"format": "{$2}{$3}{year}-{month-pretty}-{day-in-month} {hour-pretty}:{minute-pretty}:{second-pretty} [{weekday}] [W{week}] [UTC{offset-from-utc}]"
},
{
"type": "title",
"key": "{#90}{$1}│ {#93}Host: {#90}│",
"format": "{$2}{$3}{#1}{#36}{host-name}"
"key": "{#90}{$1}│ {#93}Host {#90}│",
"format": "{$2}{$3}{host-name}"
},
{
"type": "host",
"key": "{#90}{$1}│ {#93}Machine {#90}│",
"format": "{$2}{$3}{name} {#2}{version}"
"format": "{$2}{$3}{name} {#2}{version}"
},
{
"type": "os",
"key": "{#90}{$1}│ {#93}OS {#90}│",
"format": "{$2}{$3}{pretty-name} {codename} {#2}[v{version}] {#2}[{arch}]"
"format": "{$2}{$3}{?pretty-name}{pretty-name}{?}{/pretty-name}{name}{/} {codename} {#2}[v{version}] [{arch}]"
},
{
"type": "kernel",
"key": "{#90}{$1}│ {#93}Kernel {#90}│",
"format": "{$2}{$3}{sysname} {#2}[v{release}]"
"format": "{$2}{$3}{sysname} {#2}[v{release}]"
},
{
"type": "uptime",
Expand All @@ -71,14 +71,14 @@
"key": "{#90}{$1}│ {#91}CPU {#90}│",
"showPeCoreCount": true,
"temp": true,
"format": "{$2}{$3}{name} {#2}[C:{core-types}] {#2}[{freq-max}]"
"format": "{$2}{$3}{name} {#2}[C:{core-types}] [{freq-max}]"
},
{
"type": "gpu",
"key": "{#90}{$1}│ {#91}GPU {#90}│",
"detectionMethod": "auto",
"driverSpecific": true,
"format": "{$2}{$3}{name} {#2}[C:{core-count}] {#2}[{type}]"
"format": "{$2}{$3}{name} {#2}[C:{core-count}]{?frequency} [{frequency}]{?} [{type}]"
},
{
"type": "memory",
Expand All @@ -98,7 +98,7 @@
{
"type": "terminal",
"key": "{#90}{$1}│ {#95}Terminal {#90}│",
"format": "{$2}{$3}{pretty-name} {#2}[{version}] [PID:{pid}]"
"format": "{$2}{$3}{pretty-name} {#2}[{version}] [PID:{pid}]"
},
{
"type": "terminalfont",
Expand Down
Loading
Loading