Skip to content

Commit fae0612

Browse files
authored
Merge branch 'fastfetch-cli:dev' into dev
2 parents 797c2c8 + b079a86 commit fae0612

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

79 files changed

+1944
-607
lines changed

.github/workflows/ci.yml

Lines changed: 129 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -383,7 +383,7 @@ jobs:
383383
run: |
384384
cat /etc/alpine-release
385385
uname -a
386-
apk add cmake samurai vulkan-loader-dev libxcb-dev wayland-dev libdrm-dev dconf-dev imagemagick-dev chafa-dev zlib-dev dbus-dev mesa-dev opencl-dev xfconf-dev sqlite-dev networkmanager-dev pulseaudio-dev ddcutil-dev elfutils-dev gcc g++
386+
apk add cmake samurai vulkan-loader-dev libxcb-dev libxrandr-dev rpm-dev wayland-dev libdrm-dev dconf-dev imagemagick-dev chafa-dev zlib-dev dbus-dev mesa-dev opencl-dev xfconf-dev sqlite-dev networkmanager-dev pulseaudio-dev ddcutil-dev elfutils-dev gcc g++
387387
shell: alpine.sh --root {0}
388388

389389
- name: build
@@ -408,8 +408,55 @@ jobs:
408408
name: fastfetch-musl-amd64
409409
path: ./fastfetch-*.*
410410

411-
macos-universal:
412-
name: macOS-universal
411+
macos-amd64:
412+
name: macOS-amd64
413+
runs-on: macos-13
414+
permissions:
415+
security-events: write
416+
contents: read
417+
steps:
418+
- name: checkout repository
419+
uses: actions/checkout@v4
420+
421+
- name: uname -a
422+
run: uname -a
423+
424+
- name: install required packages
425+
run: |
426+
HOMEBREW_NO_INSTALLED_DEPENDENTS_CHECK=1 brew install --overwrite vulkan-loader vulkan-headers molten-vk imagemagick chafa
427+
428+
- name: configure project
429+
run: cmake -DSET_TWEAK=Off -DBUILD_TESTS=On .
430+
431+
- name: build project
432+
run: cmake --build . --target package --verbose -j4
433+
434+
- name: list features
435+
run: ./fastfetch --list-features
436+
437+
- name: run fastfetch
438+
run: time ./fastfetch -c presets/ci.jsonc --stat false
439+
440+
- name: run fastfetch --format json
441+
run: time ./fastfetch -c presets/ci.jsonc --format json
442+
443+
- name: run flashfetch
444+
run: time ./flashfetch
445+
446+
- name: print dependencies
447+
run: otool -L fastfetch
448+
449+
- name: run tests
450+
run: ctest --output-on-failure
451+
452+
- name: upload artifacts
453+
uses: actions/upload-artifact@v4
454+
with:
455+
name: fastfetch-macos-amd64
456+
path: ./fastfetch-*.*
457+
458+
macos-aarch64:
459+
name: macOS-aarch64
413460
runs-on: macos-latest
414461
permissions:
415462
security-events: write
@@ -426,7 +473,7 @@ jobs:
426473
HOMEBREW_NO_INSTALLED_DEPENDENTS_CHECK=1 brew install --overwrite vulkan-loader vulkan-headers molten-vk imagemagick chafa
427474
428475
- name: configure project
429-
run: cmake -DSET_TWEAK=Off -DBUILD_TESTS=On -DCMAKE_OSX_ARCHITECTURES='arm64;x86_64' .
476+
run: cmake -DSET_TWEAK=Off -DBUILD_TESTS=On .
430477

431478
- name: build project
432479
run: cmake --build . --target package --verbose -j4
@@ -452,7 +499,7 @@ jobs:
452499
- name: upload artifacts
453500
uses: actions/upload-artifact@v4
454501
with:
455-
name: fastfetch-macos-universal
502+
name: fastfetch-macos-aarch64
456503
path: ./fastfetch-*.*
457504

458505
sunos-amd64:
@@ -542,7 +589,7 @@ jobs:
542589
architecture: x86-64
543590
cpu_count: 4
544591
shell: bash
545-
version: '7.6'
592+
version: '7.7'
546593
run: |
547594
uname -a
548595
sudo pkg_add -r cmake git pkgconf wayland vulkan-headers vulkan-loader glib2 dconf dbus sqlite3 xfconf imagemagick chafa
@@ -597,6 +644,80 @@ jobs:
597644
name: fastfetch-netbsd-amd64
598645
path: ./fastfetch-*.*
599646

647+
dragonfly-amd64:
648+
name: DragonFly-amd64
649+
runs-on: ubuntu-latest
650+
if: false
651+
permissions:
652+
security-events: write
653+
contents: read
654+
steps:
655+
- name: checkout repository
656+
uses: actions/checkout@v4
657+
658+
- name: run VM
659+
uses: vmactions/dragonflybsd-vm@v1
660+
with:
661+
usesh: yes
662+
prepare: |
663+
uname -a
664+
pkg update
665+
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
666+
667+
run: |
668+
cmake -DSET_TWEAK=Off -DBUILD_TESTS=On -DENABLE_EMBEDDED_PCIIDS=On -DENABLE_EMBEDDED_AMDGPUIDS=On .
669+
cmake --build . --target package --verbose -j4
670+
./fastfetch --list-features
671+
time ./fastfetch -c presets/ci.jsonc --stat false
672+
time ./fastfetch -c presets/ci.jsonc --format json
673+
time ./flashfetch
674+
ldd fastfetch
675+
ctest --output-on-failure
676+
677+
- name: upload artifacts
678+
uses: actions/upload-artifact@v4
679+
with:
680+
name: fastfetch-dragonfly-amd64
681+
path: ./fastfetch-*.*
682+
683+
haiku-amd64:
684+
name: Haiku-amd64
685+
runs-on: ubuntu-latest
686+
if: false
687+
permissions:
688+
security-events: write
689+
contents: read
690+
steps:
691+
- name: checkout repository
692+
uses: actions/checkout@v4
693+
694+
- name: run VM
695+
uses: cross-platform-actions/action@master
696+
with:
697+
operating_system: haiku
698+
architecture: x86-64
699+
cpu_count: 4
700+
shell: bash
701+
version: 'r1beta5'
702+
run: |
703+
uname -a
704+
ls -l
705+
pkgman install -y git dbus_devel mesa_devel libelf_devel imagemagick_devel opencl_headers ocl_icd_devel vulkan_devel zlib_devel chafa_devel cmake gcc make pkgconfig python3.10
706+
cmake -DSET_TWEAK=Off -DBUILD_TESTS=On -DENABLE_EMBEDDED_PCIIDS=On -DENABLE_EMBEDDED_AMDGPUIDS=On .
707+
cmake --build . --target package --verbose -j4
708+
./fastfetch --list-features
709+
time ./fastfetch -c presets/ci.jsonc --stat false
710+
time ./fastfetch -c presets/ci.jsonc --format json
711+
time ./flashfetch
712+
ldd fastfetch
713+
ctest --output-on-failure
714+
715+
- name: upload artifacts
716+
uses: actions/upload-artifact@v4
717+
with:
718+
name: fastfetch-haiku-amd64
719+
path: ./fastfetch-*.*
720+
600721
windows-amd64:
601722
name: Windows-amd64
602723
runs-on: windows-latest
@@ -734,7 +855,8 @@ jobs:
734855
- linux-ppc64le
735856
- linux-s390x
736857
- musl-amd64
737-
- macos-universal
858+
- macos-amd64
859+
- macos-aarch64
738860
- freebsd-amd64
739861
- openbsd-amd64
740862
- netbsd-amd64

CHANGELOG.md

Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,44 @@
1+
# 2.45.0
2+
3+
Features:
4+
* Support OnePlus marketing name detection (#1768, Host, Android)
5+
* Recognize additional GPU vendors (GPU, Linux)
6+
* Support CTWM, FVWM and I3 window manager version detection (WM)
7+
* Support KDE version detection on *BSD (DE, FreeBSD)
8+
* Support `"logo": { "type": "command-raw" }` to run a command and display its output as logo (#1780, Logo)
9+
* Useful for displaying custom logos generated by other programs such as `pokeget`: `{ "type": "command-raw", "source": "pokeget random --hide-name" }`
10+
* Supported in JSONC config file only. `pokeget random --hide-name | fastfetch --file-raw -` should be used in shell.
11+
* Acquire SMBIOS information on DragonFly BSD from `/dev/mem`; legacy BIOS only (PhysicalMemory, DragonFly)
12+
* Support swap usage detection on DragonFly BSD (Swap, DragonFly)
13+
* Support `--swap-separate` to display detailed swap devices on separate lines (Swap)
14+
15+
Bugfixes
16+
* Fix MacBook Air model name (#1779, Host, macOS)
17+
* Don't ignore sshfs mountpoints (#1776, Disk, Linux / FreeBSD)
18+
* Fix dnf package count detection (#1777, Packages, Linux)
19+
20+
Logos:
21+
* Add Starry Linux (#1771)
22+
* Add rhel_small (#1774)
23+
* Update color palette of voidlinux (#1775)
24+
* Add void2
25+
* Update Xenia Linux (#1783)
26+
27+
# 2.44.0
28+
29+
Features:
30+
* Add option `--disk-hide-folders` and `--disk-hide-fs` to hide specific mountpoints and filesystems in Disk module (Disk)
31+
* `--disk-hide-folders` defaults to `/efi:/boot:/boot/efi` on Linux and *BSD. Previously these EFI-related folders were hardcoded to be hidden on Linux.
32+
33+
Bugfixes:
34+
* Fix Apple Terminal compatibility with `--stat` (macOS, #1755)
35+
* Ignore `/usr/bin/script` when detecting shell and terminal (Terminal / Shell, #1761)
36+
* Fix compatibility with KDE Plasma 6.4 which is in beta currently (Display, Linux, #1765)
37+
38+
Logos:
39+
* Add Kylin (#1760)
40+
* Add UBLinux (#1764)
41+
142
# 2.43.0
243

344
Features:

CMakeLists.txt

Lines changed: 26 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
cmake_minimum_required(VERSION 3.12.0) # target_link_libraries with OBJECT libs & project homepage url
22

33
project(fastfetch
4-
VERSION 2.43.0
4+
VERSION 2.45.0
55
LANGUAGES C
66
DESCRIPTION "Fast neofetch-like system information tool"
77
HOMEPAGE_URL "https://github.com/fastfetch-cli/fastfetch"
@@ -61,7 +61,7 @@ cmake_dependent_option(ENABLE_WAYLAND "Enable wayland-client" ON "LINUX OR FreeB
6161
cmake_dependent_option(ENABLE_XCB_RANDR "Enable xcb-randr" ON "LINUX OR FreeBSD OR OpenBSD OR NetBSD OR SunOS" OFF)
6262
cmake_dependent_option(ENABLE_XRANDR "Enable xrandr" ON "LINUX OR FreeBSD OR OpenBSD OR NetBSD OR SunOS" OFF)
6363
cmake_dependent_option(ENABLE_DRM "Enable libdrm" ON "LINUX OR FreeBSD OR OpenBSD OR NetBSD OR SunOS" OFF)
64-
cmake_dependent_option(ENABLE_DRM_AMDGPU "Enable libdrm_amdgpu" ON "LINUX" OFF)
64+
cmake_dependent_option(ENABLE_DRM_AMDGPU "Enable libdrm_amdgpu" ON "LINUX OR FreeBSD" OFF)
6565
cmake_dependent_option(ENABLE_GIO "Enable gio-2.0" ON "LINUX OR FreeBSD OR OpenBSD OR NetBSD OR SunOS" OFF)
6666
cmake_dependent_option(ENABLE_DCONF "Enable dconf" ON "LINUX OR FreeBSD OR OpenBSD OR NetBSD OR SunOS" OFF)
6767
cmake_dependent_option(ENABLE_DBUS "Enable dbus-1" ON "LINUX OR FreeBSD OR OpenBSD OR NetBSD OR SunOS OR Haiku" OFF)
@@ -529,6 +529,7 @@ if(LINUX)
529529
src/detection/displayserver/linux/xlib.c
530530
src/detection/font/font_linux.c
531531
src/detection/gpu/gpu_linux.c
532+
src/detection/gpu/gpu_drm.c
532533
src/detection/gpu/gpu_pci.c
533534
src/detection/gtk_qt/gtk.c
534535
src/detection/host/host_linux.c
@@ -676,6 +677,7 @@ elseif(FreeBSD)
676677
src/detection/displayserver/linux/xlib.c
677678
src/detection/font/font_linux.c
678679
src/detection/gpu/gpu_bsd.c
680+
src/detection/gpu/gpu_drm.c
679681
src/detection/gpu/gpu_pci.c
680682
src/detection/gtk_qt/gtk.c
681683
src/detection/host/host_bsd.c
@@ -787,7 +789,7 @@ elseif(NetBSD)
787789
src/detection/netio/netio_bsd.c
788790
src/detection/opengl/opengl_linux.c
789791
src/detection/os/os_nbsd.c
790-
src/detection/packages/packages_obsd.c
792+
src/detection/packages/packages_nbsd.c
791793
src/detection/poweradapter/poweradapter_nosupport.c
792794
src/detection/processes/processes_nbsd.c
793795
src/detection/gtk_qt/qt.c
@@ -802,7 +804,7 @@ elseif(NetBSD)
802804
src/detection/users/users_linux.c
803805
src/detection/wallpaper/wallpaper_linux.c
804806
src/detection/wifi/wifi_nbsd.c
805-
src/detection/wm/wm_nosupport.c
807+
src/detection/wm/wm_linux.c
806808
src/detection/de/de_linux.c
807809
src/detection/wmtheme/wmtheme_linux.c
808810
src/detection/camera/camera_linux.c
@@ -884,7 +886,7 @@ elseif(OpenBSD)
884886
src/detection/users/users_obsd.c
885887
src/detection/wallpaper/wallpaper_linux.c
886888
src/detection/wifi/wifi_obsd.c
887-
src/detection/wm/wm_nosupport.c
889+
src/detection/wm/wm_linux.c
888890
src/detection/de/de_linux.c
889891
src/detection/wmtheme/wmtheme_linux.c
890892
src/detection/camera/camera_linux.c
@@ -1593,7 +1595,6 @@ elseif(WIN32)
15931595
PRIVATE "winbrand"
15941596
PRIVATE "propsys"
15951597
PRIVATE "secur32"
1596-
PRIVATE "pdh"
15971598
)
15981599
if(CMAKE_SYSTEM_PROCESSOR STREQUAL "ARM64")
15991600
# WoA only works on Windows 10 or higher
@@ -1925,17 +1926,17 @@ install(
19251926
##################
19261927

19271928
set(CPACK_GENERATOR "TGZ;ZIP")
1929+
if(CMAKE_SYSTEM_PROCESSOR STREQUAL "x86_64")
1930+
set(CMAKE_SYSTEM_PROCESSOR "amd64")
1931+
elseif(CMAKE_SYSTEM_PROCESSOR STREQUAL "arm64")
1932+
set(CMAKE_SYSTEM_PROCESSOR "aarch64")
1933+
endif()
19281934
if(APPLE)
1929-
string(TOLOWER "${CMAKE_PROJECT_NAME}-macos-universal" CPACK_PACKAGE_FILE_NAME)
1930-
else() # We don't use this in Windows
1931-
if(CMAKE_SYSTEM_PROCESSOR STREQUAL "x86_64")
1932-
set(CMAKE_SYSTEM_PROCESSOR "amd64")
1933-
endif()
1934-
if(IS_MUSL)
1935-
string(TOLOWER "${CMAKE_PROJECT_NAME}-musl-${CMAKE_SYSTEM_PROCESSOR}" CPACK_PACKAGE_FILE_NAME)
1936-
else()
1937-
string(TOLOWER "${CMAKE_PROJECT_NAME}-${CMAKE_SYSTEM_NAME}-${CMAKE_SYSTEM_PROCESSOR}" CPACK_PACKAGE_FILE_NAME)
1938-
endif()
1935+
string(TOLOWER "${CMAKE_PROJECT_NAME}-macos-${CMAKE_SYSTEM_PROCESSOR}" CPACK_PACKAGE_FILE_NAME) # use macos instead of darwin
1936+
elseif(IS_MUSL)
1937+
string(TOLOWER "${CMAKE_PROJECT_NAME}-musl-${CMAKE_SYSTEM_PROCESSOR}" CPACK_PACKAGE_FILE_NAME)
1938+
else()
1939+
string(TOLOWER "${CMAKE_PROJECT_NAME}-${CMAKE_SYSTEM_NAME}-${CMAKE_SYSTEM_PROCESSOR}" CPACK_PACKAGE_FILE_NAME)
19391940
endif()
19401941

19411942
if(LINUX)
@@ -1961,12 +1962,17 @@ if(LINUX)
19611962
endif()
19621963
endif()
19631964

1964-
find_program(HAVE_RPMBUILD "rpmbuild")
1965-
if(HAVE_RPMBUILD)
1966-
set(CPACK_GENERATOR "${CPACK_GENERATOR};RPM")
1965+
if(NOT IS_MUSL)
1966+
find_program(HAVE_RPMBUILD "rpmbuild")
1967+
if(HAVE_RPMBUILD)
1968+
set(CPACK_GENERATOR "${CPACK_GENERATOR};RPM")
19671969

1968-
set(CPACK_RPM_PACKAGE_LICENSE "MIT")
1970+
set(CPACK_RPM_PACKAGE_LICENSE "MIT")
1971+
endif()
19691972
endif()
1973+
elseif(FreeBSD)
1974+
set(CPACK_FREEBSD_PACKAGE_LICENSE "MIT")
1975+
set(CPACK_GENERATOR "${CPACK_GENERATOR};FREEBSD")
19701976
endif()
19711977

19721978
set(CPACK_SET_DESTDIR ON)

debian/changelog

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,15 @@
1+
fastfetch (2.45.0) jammy; urgency=medium
2+
3+
* Update to 2.45.0
4+
5+
-- Carter Li <[email protected]> Thu, 05 Jun 2025 10:56:38 +0800
6+
7+
fastfetch (2.44.0) jammy; urgency=medium
8+
9+
* Update to 2.44.0
10+
11+
-- Carter Li <[email protected]> Mon, 26 May 2025 14:59:01 +0800
12+
113
fastfetch (2.43.0) jammy; urgency=medium
214

315
* Update to 2.43.0

debian/files

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
fastfetch_2.43.0_source.buildinfo universe/utils optional
1+
fastfetch_2.45.0_source.buildinfo universe/utils optional

0 commit comments

Comments
 (0)