Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
37 commits
Select commit Hold shift + click to select a range
6e98db3
Packaging: update debian stuff [ci skip]
CarterLi Feb 19, 2025
3e5d129
Battery (Haiku): handle empty slots
mmuman Feb 19, 2025
8526f4a
JsonSchema: update format schema
CarterLi Feb 20, 2025
171005b
Chassis (macOS): add support
CarterLi Feb 20, 2025
c8e4962
Battery: add missing `{icon}` in key format
CarterLi Feb 20, 2025
0bfa12c
OS: allow customize key format with kernel name and distro name
CarterLi Feb 20, 2025
1047d1c
Presets: add a new example
CarterLi Feb 20, 2025
d463853
DateTime (Windows): fix day-pretty output in custom format
CarterLi Feb 20, 2025
8f69533
Presets: fix OS key in examples/25
CarterLi Feb 20, 2025
6de9d0c
Disk: add `{mountpoint}` and `{mount-from}` in custom output format
CarterLi Feb 20, 2025
de7b57d
Logo (Builtin): add opensuse-tumbleweed_small
CarterLi Feb 21, 2025
7a2e071
Builtin (Logo): simplify linuxmint handling
CarterLi Feb 21, 2025
f345486
OS (Linux): fix VanillaOS detection
CarterLi Feb 21, 2025
4e17688
Logo (Builtin): simplify os names
CarterLi Feb 21, 2025
3d6bd26
Bootmgr (Linux): fix secure boot testing
CarterLi Feb 24, 2025
59b568a
Logo (Builtin): Added Bedrock Linux small ASCII logo (#1582)
TurtleMeds Feb 24, 2025
b76ada7
Logo (Builtin): simplify
CarterLi Feb 24, 2025
a2327b7
GPU: support percentage num & bar in custom format
CarterLi Feb 24, 2025
4f4622e
Packages (Linux): Add support for Pisi Linux (#1580)
keremgokcek Feb 24, 2025
8e79fde
JsonSchema: update format json [ci skip]
CarterLi Feb 25, 2025
383a6c8
TerminalFont (Linux): support termite terminal (#1588)
koraynilay Feb 26, 2025
ac71ebc
Terminal (Linux): support termite version detection
CarterLi Feb 26, 2025
75da934
Brightness: detect & print screen type
CarterLi Feb 25, 2025
2eae5a8
Camera (macOS): try fixing segfault in macOS 10.15
CarterLi Feb 26, 2025
8000574
Doc: update changelog [ci skip]
CarterLi Feb 27, 2025
a66e1b2
Doc: fix `SI` size prefix description
CarterLi Feb 27, 2025
664460c
Logo: add fastfetch logo
CarterLi Feb 28, 2025
aee7b37
Chore (Windows): set exe file icon to fastfetch logo
CarterLi Feb 28, 2025
efbdaf7
Logo (Builtin): update fastfetch logo to match the svg one
CarterLi Feb 28, 2025
38ea333
Doc: update supported platforms
CarterLi Feb 28, 2025
b94c6ab
Logo (Builtin): Add Shebang Linux (#1592)
Mar 1, 2025
64f9e53
CI (macOS): remove CodeQL
CarterLi Mar 2, 2025
334afc9
Camera (macOS): fix crashing on old macOS version
CarterLi Mar 2, 2025
4e00f37
Camera (macOS): silence compiler warnings
CarterLi Mar 2, 2025
570abb1
Chore: update image logo
CarterLi Feb 28, 2025
a36bdfa
Release: v2.38.0
CarterLi Mar 3, 2025
0ac0100
CI: try fixing CI failures
CarterLi Mar 3, 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
30 changes: 10 additions & 20 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -187,7 +187,7 @@ jobs:

linux-armv7l:
name: Linux-armv7l
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04
permissions:
security-events: write
contents: read
Expand All @@ -196,7 +196,7 @@ jobs:
uses: actions/checkout@v4

- name: run VM
uses: uraimo/run-on-arch-action@v2
uses: uraimo/run-on-arch-action@v3
id: runcmd
with:
arch: armv7
Expand Down Expand Up @@ -226,7 +226,7 @@ jobs:

linux-armv6l:
name: Linux-armv6l
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04
permissions:
security-events: write
contents: read
Expand All @@ -235,7 +235,7 @@ jobs:
uses: actions/checkout@v4

- name: run VM
uses: uraimo/run-on-arch-action@v2
uses: uraimo/run-on-arch-action@v3
id: runcmd
with:
arch: armv6
Expand All @@ -262,7 +262,7 @@ jobs:

linux-riscv64:
name: Linux-riscv64
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04
permissions:
security-events: write
contents: read
Expand All @@ -271,7 +271,7 @@ jobs:
uses: actions/checkout@v4

- name: run VM
uses: uraimo/run-on-arch-action@v2
uses: uraimo/run-on-arch-action@v3
id: runcmd
with:
arch: riscv64
Expand All @@ -297,7 +297,7 @@ jobs:

linux-ppc64le:
name: Linux-ppc64le
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04
permissions:
security-events: write
contents: read
Expand All @@ -306,7 +306,7 @@ jobs:
uses: actions/checkout@v4

- name: run VM
uses: uraimo/run-on-arch-action@v2
uses: uraimo/run-on-arch-action@v3
id: runcmd
with:
arch: ppc64le
Expand All @@ -332,7 +332,7 @@ jobs:

linux-s390x:
name: Linux-s390x
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04
permissions:
security-events: write
contents: read
Expand All @@ -341,7 +341,7 @@ jobs:
uses: actions/checkout@v4

- name: run VM
uses: uraimo/run-on-arch-action@v2
uses: uraimo/run-on-arch-action@v3
id: runcmd
with:
arch: s390x
Expand Down Expand Up @@ -373,8 +373,6 @@ jobs:

- name: setup alpine linux
uses: jirutka/setup-alpine@master
with:
branch: v3.19

- name: install dependencies
run: |
Expand Down Expand Up @@ -422,20 +420,12 @@ jobs:
run: |
HOMEBREW_NO_INSTALLED_DEPENDENTS_CHECK=1 brew install --overwrite vulkan-loader vulkan-headers molten-vk imagemagick chafa

- name: Initialize CodeQL
uses: github/codeql-action/init@v3
with:
languages: c

- name: configure project
run: cmake -DSET_TWEAK=Off -DBUILD_TESTS=On -DCMAKE_OSX_ARCHITECTURES='arm64;x86_64' .

- name: build project
run: cmake --build . --target package --verbose -j4

- name: perform CodeQL analysis
uses: github/codeql-action/analyze@v3

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

Expand Down
26 changes: 26 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,29 @@
# 2.38.0

Bugfixes:
* Fix empty battery slots handling (Battery, Haiku, #1575)
* Fix `{day-pretty}` output in custom format (DateTime, Windows)
* Fix VanillaOS detection (OS, Linux)
* Fix secure boot testing (Bootmgr, Linux, #1584)
* Fix the SI unit "kB" in help message (#1589)
* Fix segfault on macOS 10.15 when using the binary downloaded from Github Releases (Camera, macOS, #1594)

Features:
* Support Chassis module in macOS (Chassis, macOS)
* Allow customize key format with kernel name and distro name (OS)
* Add missing `{icon}` in custom key format (Battery)
* Add missing `{mountpoint}` and `{mount-from}` in custom output format (Disk, #1577)
* Support percentage num & bar in custom format (GPU, #1583)
* Support `pisi` package manager detection (Packages, Linux)
* Support termite terminal font detection (TerminalFont, Linux)
* Report monitor type in Brightness module (Brightness)

Logo:
* Add `opensuse-tumbleweed_small`
* Add `Bedrock_small`
* Add `fastfetch`
* Remove some unnecessary distro names

# 2.37.0

Changes:
Expand Down
6 changes: 3 additions & 3 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.37.0
VERSION 2.38.0
LANGUAGES C
DESCRIPTION "Fast neofetch-like system information tool"
HOMEPAGE_URL "https://github.com/fastfetch-cli/fastfetch"
Expand Down Expand Up @@ -103,7 +103,7 @@ if(NOT BINARY_LINK_TYPE IN_LIST BINARY_LINK_TYPE_OPTIONS)
message(FATAL_ERROR "BINARY_LINK_TYPE must be one of ${BINARY_LINK_TYPE_OPTIONS}")
endif()

set(PACKAGE_MANAGERS AM APK BREW CHOCO DPKG EMERGE EOPKG FLATPAK GUIX LINGLONG LPKG LPKGBUILD MACPORTS NIX OPKG PACMAN PACSTALL PALUDIS PKG PKGTOOL RPM SCOOP SNAP SORCERY WINGET XBPS)
set(PACKAGE_MANAGERS AM APK BREW CHOCO DPKG EMERGE EOPKG FLATPAK GUIX LINGLONG LPKG LPKGBUILD MACPORTS NIX OPKG PACMAN PACSTALL PALUDIS PISI PKG PKGTOOL RPM SCOOP SNAP SORCERY WINGET XBPS)
foreach(package_manager ${PACKAGE_MANAGERS})
if(package_manager STREQUAL "WINGET")
option(PACKAGES_DISABLE_${package_manager} "Disable ${package_manager} package manager detection by default" ON)
Expand Down Expand Up @@ -905,7 +905,7 @@ elseif(APPLE)
src/detection/bootmgr/bootmgr_apple.c
src/detection/brightness/brightness_apple.c
src/detection/btrfs/btrfs_nosupport.c
src/detection/chassis/chassis_nosupport.c
src/detection/chassis/chassis_apple.c
src/detection/cpu/cpu_apple.c
src/detection/cpucache/cpucache_apple.c
src/detection/cpuusage/cpuusage_apple.c
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
[![latest packaged version(s)](https://repology.org/badge/latest-versions/fastfetch.svg)](https://repology.org/project/fastfetch/versions)
[![Packaging status](https://repology.org/badge/tiny-repos/fastfetch.svg)](https://repology.org/project/fastfetch/versions)

Fastfetch is a [neofetch](https://github.com/dylanaraps/neofetch)-like tool for fetching system information and displaying it prettily. It is written mainly in C, with performance and customizability in mind. Currently, Linux, Android, FreeBSD, macOS, SunOS and Windows 7+ are supported.
Fastfetch is a [neofetch](https://github.com/dylanaraps/neofetch)-like tool for fetching system information and displaying it prettily. It is written mainly in C, with performance and customizability in mind. Currently, Linux, macOS, Windows 7+, Android, FreeBSD, OpenBSD, NetBSD, DragonFly, Haiku and SunOS are supported.

<img src="screenshots/example1.png" width="49%" align="left" />
<img src="https://upload.wikimedia.org/wikipedia/commons/2/24/Transparent_Square_Tiles_Texture.png" width="49%" height="16px" align="left" />
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.37.0) jammy; urgency=medium

* Update to 2.37.0

-- Carter Li <[email protected]> Wed, 19 Feb 2025 15:43:42 +0800

fastfetch (2.36.1) jammy; urgency=medium

* Update to 2.36.1
Expand Down
2 changes: 1 addition & 1 deletion debian/files
Original file line number Diff line number Diff line change
@@ -1 +1 @@
fastfetch_2.36.1_source.buildinfo universe/utils optional
fastfetch_2.37.0_source.buildinfo universe/utils optional
11 changes: 6 additions & 5 deletions doc/json_schema.json
Original file line number Diff line number Diff line change
Expand Up @@ -183,7 +183,7 @@
"type": "string"
},
"diskFormat": {
"description": "Output format of the module `Disk`. See `-h format` for formatting syntax\n 1. {size-used}: Size used\n 2. {size-total}: Size total\n 3. {size-percentage}: Size percentage num\n 4. {files-used}: Files used\n 5. {files-total}: Files total\n 6. {files-percentage}: Files percentage num\n 7. {is-external}: True if external volume\n 8. {is-hidden}: True if hidden volume\n 9. {filesystem}: Filesystem\n 10. {name}: Label / name\n 11. {is-readonly}: True if read-only\n 12. {create-time}: Create time in local timezone\n 13. {size-percentage-bar}: Size percentage bar\n 14. {files-percentage-bar}: Files percentage bar\n 15. {days}: Days after creation\n 16. {hours}: Hours after creation\n 17. {minutes}: Minutes after creation\n 18. {seconds}: Seconds after creation\n 19. {milliseconds}: Milliseconds after creation",
"description": "Output format of the module `Disk`. See `-h format` for formatting syntax\n 1. {size-used}: Size used\n 2. {size-total}: Size total\n 3. {size-percentage}: Size percentage num\n 4. {files-used}: Files used\n 5. {files-total}: Files total\n 6. {files-percentage}: Files percentage num\n 7. {is-external}: True if external volume\n 8. {is-hidden}: True if hidden volume\n 9. {filesystem}: Filesystem\n 10. {name}: Label / name\n 11. {is-readonly}: True if read-only\n 12. {create-time}: Create time in local timezone\n 13. {size-percentage-bar}: Size percentage bar\n 14. {files-percentage-bar}: Files percentage bar\n 15. {days}: Days after creation\n 16. {hours}: Hours after creation\n 17. {minutes}: Minutes after creation\n 18. {seconds}: Seconds after creation\n 19. {milliseconds}: Milliseconds after creation\n 20. {mountpoint}: Mount point / drive letter\n 21. {mount-from}: Mount from (device path)",
"type": "string"
},
"diskioFormat": {
Expand All @@ -207,7 +207,7 @@
"type": "string"
},
"gpuFormat": {
"description": "Output format of the module `GPU`. See `-h format` for formatting syntax\n 1. {vendor}: GPU vendor\n 2. {name}: GPU name\n 3. {driver}: GPU driver\n 4. {temperature}: GPU temperature\n 5. {core-count}: GPU core count\n 6. {type}: GPU type\n 7. {dedicated-total}: GPU total dedicated memory\n 8. {dedicated-used}: GPU used dedicated memory\n 9. {shared-total}: GPU total shared memory\n 10. {shared-used}: GPU used shared memory\n 11. {platform-api}: The platform API used when detecting the GPU\n 12. {frequency}: Current frequency in GHz\n 13. {index}: GPU vendor specific index",
"description": "Output format of the module `GPU`. See `-h format` for formatting syntax\n 1. {vendor}: GPU vendor\n 2. {name}: GPU name\n 3. {driver}: GPU driver\n 4. {temperature}: GPU temperature\n 5. {core-count}: GPU core count\n 6. {type}: GPU type\n 7. {dedicated-total}: GPU total dedicated memory\n 8. {dedicated-used}: GPU used dedicated memory\n 9. {shared-total}: GPU total shared memory\n 10. {shared-used}: GPU used shared memory\n 11. {platform-api}: The platform API used when detecting the GPU\n 12. {frequency}: Current frequency in GHz\n 13. {index}: GPU vendor specific index\n 14. {dedicated-percentage-num}: Dedicated memory usage percentage num\n 15. {dedicated-percentage-bar}: Dedicated memory usage percentage bar\n 16. {shared-percentage-num}: Shared memory usage percentage num\n 17. {shared-percentage-bar}: Shared memory usage percentage bar\n 18. {core-usage-num}: Core usage percentage num (supports Nvidia & Apple GPU only)\n 19. {core-usage-bar}: Core usage percentage bar (supports Nvidia & Apple GPU only)",
"type": "string"
},
"hostFormat": {
Expand Down Expand Up @@ -279,7 +279,7 @@
"type": "string"
},
"packagesFormat": {
"description": "Output format of the module `Packages`. See `-h format` for formatting syntax\n 1. {all}: Number of all packages\n 2. {pacman}: Number of pacman packages\n 3. {pacman-branch}: Pacman branch on manjaro\n 4. {dpkg}: Number of dpkg packages\n 5. {rpm}: Number of rpm packages\n 6. {emerge}: Number of emerge packages\n 7. {eopkg}: Number of eopkg packages\n 8. {xbps}: Number of xbps packages\n 9. {nix-system}: Number of nix-system packages\n 10. {nix-user}: Number of nix-user packages\n 11. {nix-default}: Number of nix-default packages\n 12. {apk}: Number of apk packages\n 13. {pkg}: Number of pkg packages\n 14. {flatpak-system}: Number of flatpak-system app packages\n 15. {flatpak-user}: Number of flatpak-user app packages\n 16. {snap}: Number of snap packages\n 17. {brew}: Number of brew packages\n 18. {brew-cask}: Number of brew-cask packages\n 19. {macports}: Number of macports packages\n 20. {scoop}: Number of scoop packages\n 21. {choco}: Number of choco packages\n 22. {pkgtool}: Number of pkgtool packages\n 23. {paludis}: Number of paludis packages\n 24. {winget}: Number of winget packages\n 25. {opkg}: Number of opkg packages\n 26. {am-system}: Number of am-system packages\n 27. {sorcery}: Number of sorcery packages\n 28. {lpkg}: Number of lpkg packages\n 29. {lpkgbuild}: Number of lpkgbuild packages\n 30. {guix-system}: Number of guix-system packages\n 31. {guix-user}: Number of guix-user packages\n 32. {guix-home}: Number of guix-home packages\n 33. {linglong}: Number of linglong packages\n 34. {pacstall}: Number of pacstall packages\n 35. {mport}: Number of mport packages\n 36. {qi}: Number of qi packages\n 37. {am-user}: Number of am-user (aka appman) packages\n 38. {pkgsrc}: Number of pkgsrc packages\n 39. {nix-all}: Total number of all nix packages\n 40. {flatpak-all}: Total number of all flatpak app packages\n 41. {brew-all}: Total number of all brew packages\n 42. {guix-all}: Total number of all guix packages",
"description": "Output format of the module `Packages`. See `-h format` for formatting syntax\n 1. {all}: Number of all packages\n 2. {pacman}: Number of pacman packages\n 3. {pacman-branch}: Pacman branch on manjaro\n 4. {dpkg}: Number of dpkg packages\n 5. {rpm}: Number of rpm packages\n 6. {emerge}: Number of emerge packages\n 7. {eopkg}: Number of eopkg packages\n 8. {xbps}: Number of xbps packages\n 9. {nix-system}: Number of nix-system packages\n 10. {nix-user}: Number of nix-user packages\n 11. {nix-default}: Number of nix-default packages\n 12. {apk}: Number of apk packages\n 13. {pkg}: Number of pkg packages\n 14. {flatpak-system}: Number of flatpak-system app packages\n 15. {flatpak-user}: Number of flatpak-user app packages\n 16. {snap}: Number of snap packages\n 17. {brew}: Number of brew packages\n 18. {brew-cask}: Number of brew-cask packages\n 19. {macports}: Number of macports packages\n 20. {scoop}: Number of scoop packages\n 21. {choco}: Number of choco packages\n 22. {pkgtool}: Number of pkgtool packages\n 23. {paludis}: Number of paludis packages\n 24. {winget}: Number of winget packages\n 25. {opkg}: Number of opkg packages\n 26. {am-system}: Number of am-system packages\n 27. {sorcery}: Number of sorcery packages\n 28. {lpkg}: Number of lpkg packages\n 29. {lpkgbuild}: Number of lpkgbuild packages\n 30. {guix-system}: Number of guix-system packages\n 31. {guix-user}: Number of guix-user packages\n 32. {guix-home}: Number of guix-home packages\n 33. {linglong}: Number of linglong packages\n 34. {pacstall}: Number of pacstall packages\n 35. {mport}: Number of mport packages\n 36. {qi}: Number of qi packages\n 37. {am-user}: Number of am-user (aka appman) packages\n 38. {pkgsrc}: Number of pkgsrc packages\n 39. {hpkg-system}: Number of hpkg-system packages\n 40. {hpkg-user}: Number of hpkg-user packages\n 41. {pisi}: Number of pisi packages\n 42. {nix-all}: Total number of all nix packages\n 43. {flatpak-all}: Total number of all flatpak app packages\n 44. {brew-all}: Total number of all brew packages\n 45. {guix-all}: Total number of all guix packages\n 46. {hpkg-all}: Total number of all hpkg packages",
"type": "string"
},
"physicaldiskFormat": {
Expand Down Expand Up @@ -786,11 +786,11 @@
},
{
"const": "si",
"description": "1000 Bytes = 1 KB, 1000 KB = 1 MB, ..."
"description": "1000 Bytes = 1 kB, 1000 kB = 1 MB, ..."
},
{
"const": "jedec",
"description": "1024 Bytes = 1 kB, 1024 K = 1 MB, ..."
"description": "1024 Bytes = 1 KB, 1024 KB = 1 MB, ..."
}
]
},
Expand Down Expand Up @@ -2652,6 +2652,7 @@
"pacman",
"pacstall",
"paludis",
"pisi",
"pkg",
"pkgtool",
"qi",
Expand Down
Loading
Loading