Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
198 commits
Select commit Hold shift + click to select a range
bddcb47
DE (FreeBSD): add fast path for xfce4 version detection
CarterLi Aug 29, 2023
a5ee51e
Global: use FF_LIST_AUTO_DESTROY
CarterLi Aug 28, 2023
21e5df2
Global: replace `cpu-usage` to `cpuusage`
CarterLi Aug 29, 2023
7cb86df
Logo: improve performance on Windows for iterm protocol
CarterLi Aug 30, 2023
0bda7d8
Doc: update README for image logo on Windows
CarterLi Aug 30, 2023
e5c4a6e
Logo (Builtin): update EvolutionOS
CarterLi Sep 2, 2023
3e880fe
Logo: support `kitty-direct` / `iterm` without specifying logo width …
CarterLi Sep 2, 2023
552e0f8
Doc: update changelog
CarterLi Sep 2, 2023
67d04a7
Terminal: support contour version detection
CarterLi Sep 2, 2023
34417ae
TerminalFont: support contour
CarterLi Sep 2, 2023
04d56d9
IO: fix short read when reading from pipe
CarterLi Sep 2, 2023
3692e49
TerminalShell: correctly set PATH_MAX on Linux
CarterLi Sep 2, 2023
effb685
Logo: try improving performance for `image-raw`
CarterLi Sep 2, 2023
4dfbc0f
Logo: try fixing #553
CarterLi Sep 2, 2023
9500ca8
Logo: fix `poll() timeout or failed` error when image is very large
CarterLi Sep 3, 2023
33f121d
JsonSchema: fix the name of property `defaultRouteOnly`
CarterLi Sep 3, 2023
9e839d3
Logo: simplify code
CarterLi Sep 3, 2023
3483673
Terminal (Android): fix termux detection
CarterLi Sep 3, 2023
fc61f64
Logo: add `--logo-separate true`
CarterLi Sep 3, 2023
b863e65
OpenGL: silence warnings
CarterLi Sep 3, 2023
591fd55
Logo: fix `--logo-padding` for `--logo-separate`
CarterLi Sep 3, 2023
10853fd
Doc: add note for image protocol support of Android
CarterLi Sep 3, 2023
2f46a77
TerminalFont: better kitty font detection
CarterLi Sep 4, 2023
14f2687
Global: init `--format json` support (#527)
CarterLi Aug 29, 2023
3669f2a
Battery: rename `BatteryResult` to `FFBatteryResult`
CarterLi Aug 30, 2023
757e5f8
Bluetooth: support Json printing
CarterLi Aug 30, 2023
fb3fb1b
Bluetooth: rename `FFBluetoothDevice` to `FFBluetoothResult`
CarterLi Aug 30, 2023
3d44514
Board: support Json printing
CarterLi Aug 30, 2023
c5d8d97
Brightness: add Json printing support
CarterLi Aug 30, 2023
acd353b
Chassis: add Json printing support
CarterLi Aug 30, 2023
01aa9b9
Command: add JSON printing support
CarterLi Aug 30, 2023
28e412b
CPU: add JSON printing support
CarterLi Aug 30, 2023
ac8741d
CPUUsage: add JSON printing support
CarterLi Aug 30, 2023
a4fabab
Cursor: add JSON format support
CarterLi Aug 31, 2023
632718e
DateTime: support JSON printing
CarterLi Aug 31, 2023
76fce2c
DE: add JSON printing support
CarterLi Aug 31, 2023
639ad43
Global: code refactor
CarterLi Aug 31, 2023
d5ca6aa
Disk: add JSON printing support
CarterLi Aug 31, 2023
34e2b0f
Display: add JSON printing support
CarterLi Aug 31, 2023
21f36b5
Font: add JSON printing support
CarterLi Aug 31, 2023
97293dd
Gamepad: add JSON printing support
CarterLi Aug 31, 2023
81c625e
GPU: add JSON printing support
CarterLi Sep 5, 2023
fddf6dd
CPU: don't use NaN in JSON
CarterLi Sep 5, 2023
971a69a
Host: add JSON formatting support
CarterLi Sep 5, 2023
dfbfb88
Icons: add JSON formatting support
CarterLi Sep 5, 2023
39b21f9
Kernel: add JSON format support
CarterLi Sep 5, 2023
f9cd032
LM: add JSON format support
CarterLi Sep 5, 2023
e0ce520
Locale: add JSON format support
CarterLi Sep 5, 2023
623c5d8
LocalIP: add JSON format support
CarterLi Sep 5, 2023
dc29271
Media: add JSON format support
CarterLi Sep 6, 2023
849ff95
Player: JSON format support
CarterLi Sep 6, 2023
8bb88d1
Memory: JSON format support
CarterLi Sep 6, 2023
a7c6e11
Swap: JSON format support
CarterLi Sep 6, 2023
eb4636b
PowerAdapter: JSON format support
CarterLi Sep 6, 2023
f995d8d
PowerAdapter: rename `PowerAdapterResult` to `FFPowerAdapterResult`
CarterLi Sep 6, 2023
98833b4
Monitor: add JSON support
CarterLi Sep 6, 2023
cdaf5e9
OpenCL: JSON format support
CarterLi Sep 7, 2023
34902db
OpenGL: JSON format support
CarterLi Sep 7, 2023
9eb35d3
OS: JSON format support
CarterLi Sep 7, 2023
77d388c
Disk (BSD): use `getfsstat` instead of `getmntinfo` for thread safety
CarterLi Sep 7, 2023
598dfd2
Disk (Apple): use `getattrlist` to detect volume name
CarterLi Sep 7, 2023
904c9eb
CPU (macOS): code refactor
CarterLi Sep 7, 2023
d8b2151
CPU (macOS): support Apple Silicon frequency detection
CarterLi Sep 7, 2023
fe9fcd6
CPU (Windows): fix possible memory errors
CarterLi Sep 7, 2023
a093ca2
Users: add more detailed information
CarterLi Sep 7, 2023
cde2ba2
Uptime: detect boot time
CarterLi Sep 8, 2023
7f1e2d2
Packages (Windows): support winget packages count
CarterLi Sep 8, 2023
4356974
Image: fix separated image printing
CarterLi Sep 8, 2023
aafd773
Uptime: JSON format support
CarterLi Sep 8, 2023
2c59a05
Users: JSON format support
CarterLi Sep 8, 2023
826aa2e
Packages: support JSON format
CarterLi Sep 8, 2023
aff4a57
Processes: JSON format support
CarterLi Sep 8, 2023
d97b169
Shell: JSON format support
CarterLi Sep 8, 2023
1cdc99f
JSON format: fix some memleaks
CarterLi Sep 8, 2023
1526930
Logo (Builtin): update EvolutionOS
CarterLi Sep 8, 2023
f662cc0
Logo (Builtin): update AOSC OS
CarterLi Sep 8, 2023
94eb3b8
Logo (Builtin): use first color as title color
CarterLi Sep 8, 2023
82c300f
Logo (Builtin): add Afterglow
CarterLi Sep 8, 2023
e2abe31
Monitor: fix memleaks
CarterLi Sep 10, 2023
c702865
Presets: add a new example
CarterLi Sep 11, 2023
2574394
CI: update deps
CarterLi Sep 12, 2023
f13b771
Sound: support JSON format
CarterLi Sep 12, 2023
9447f1c
Terminal: support JSON format
CarterLi Sep 12, 2023
2251086
TerminalFont: support JSON format
CarterLi Sep 12, 2023
f3ec60a
Uptime: add `ffTimeGetNow()` and use it
CarterLi Sep 12, 2023
a927f4a
DateTime: code refactor using `ffTimeGetNow`
CarterLi Sep 12, 2023
4124c12
TerminalSize: support JSON format
CarterLi Sep 12, 2023
e91d011
Theme: support JSON format
CarterLi Sep 12, 2023
10a249d
Title: support JSON support
CarterLi Sep 12, 2023
4449173
Version: support JSON config
CarterLi Sep 12, 2023
9b72971
Uptime (FreeBSD): fix building
CarterLi Sep 13, 2023
c400261
Deps: update yyjson
CarterLi Sep 13, 2023
16b01a0
Vulkan: support JSON format
CarterLi Sep 13, 2023
9765885
Wallpaper: support JSON format
CarterLi Sep 13, 2023
3a8819d
Wifi: support JSON format
CarterLi Sep 13, 2023
77466ba
GPU: tidy
CarterLi Sep 13, 2023
804463a
WM: support JSON format
CarterLi Sep 13, 2023
3dfa99c
WMTheme: support JSON format
CarterLi Sep 13, 2023
2963e3b
Terminal: don't print shell information in Terminal module
CarterLi Sep 13, 2023
7dfc0d8
Shell: don't detect user shell
CarterLi Sep 13, 2023
58f2346
Users: make `--users-compact` false by default
CarterLi Sep 13, 2023
8d914ac
Doc: update changelog
CarterLi Sep 13, 2023
b3bdf49
PublicIP: code refactor
CarterLi Sep 13, 2023
28d40d9
Global: fix some memleaks
CarterLi Sep 13, 2023
f5ad07a
PublicIP: support JSON format
CarterLi Sep 13, 2023
63c29b1
Weather: code refactor
CarterLi Sep 13, 2023
013abe2
Weather: support JSON format
CarterLi Sep 13, 2023
6113107
Global: silence compiler warnings
CarterLi Sep 13, 2023
237c6f1
Processes / LocalIP: try increasing stability
CarterLi Sep 13, 2023
df945e8
Deps: upgrade yyjson
CarterLi Sep 14, 2023
9535b6a
PublicIP: fix missing new line
CarterLi Sep 14, 2023
2039bed
Logo (Builtin): add Elbrus
xbt573 Sep 14, 2023
0d7dc2d
Logo (Ubuntu): changed the edges of the Ubuntu logo to make it rounder
CarterLi Sep 14, 2023
49f42cd
Doc: update changelog
CarterLi Sep 14, 2023
f97cddf
JSON: support `--stat` for flag based configurations
CarterLi Sep 14, 2023
0d5cf52
FFstrbuf: add ffStrbufAppendNC
CarterLi Sep 15, 2023
bd02e5c
Logo: code refactor
CarterLi Sep 15, 2023
b721f90
Logo (Builtin): improve performance on Windows
CarterLi Sep 15, 2023
3c7903c
JsonSchema: add `processingTimeout`
CarterLi Sep 9, 2023
24a9231
Kernel (Windows): remove trailing `\0`
CarterLi Sep 15, 2023
2082e01
Theme: support JSON format (2)
CarterLi Sep 16, 2023
6c1b39a
Shell (FreeBSD): remove trailing `\0`
CarterLi Sep 16, 2023
fb69d56
Arguments: handle `--lib-pulse` properly
xbt573 Sep 17, 2023
fe89e71
Disk (Linux): try fixing zpool detection
CarterLi Sep 17, 2023
b54e182
Disk (Windows): detect volume name
CarterLi Sep 17, 2023
d8e4575
Disk (Linux): fix ZFS subvolume detection
CarterLi Sep 17, 2023
2bb78af
Disk (Linux): detect USB devices as external volumes only
CarterLi Sep 17, 2023
bdc79a2
Doc: update changelog
CarterLi Sep 17, 2023
b4f063e
Disk (Linux): detect external disk more accurately
CarterLi Sep 18, 2023
939165d
Platform: align logic of getting host name to neofetch
CarterLi Sep 18, 2023
7cd79d3
Presets: remove `devinfo` and `verbose`
CarterLi Sep 18, 2023
7f72708
Disk: move filesystem outside of files (JSON format)
CarterLi Sep 18, 2023
8a14cba
JSON: don't print the non-standand `NaN`
CarterLi Sep 18, 2023
8edb7d3
Logo: fix Windows 11_small
CarterLi Sep 18, 2023
06b1051
Global: don't trim custom strings
CarterLi Sep 18, 2023
3714dfd
Presets: new example
CarterLi Sep 18, 2023
dbd6e45
Disk (Android): fix build
CarterLi Sep 18, 2023
69e57e5
Disk (Android): fix detection on Android
CarterLi Sep 18, 2023
48cecd0
CPU: update JSON format structure
CarterLi Sep 19, 2023
26e5790
Brightness: report more detailed values
CarterLi Sep 19, 2023
064f624
macOS: fix compiler warnings on latest xcode
CarterLi Sep 19, 2023
38c22bf
Disk (FreeBSD): hide `/boot` like what linux does
CarterLi Sep 20, 2023
64615e6
Doc: update changelog
CarterLi Sep 20, 2023
576fcd7
Display: print display type
CarterLi Sep 20, 2023
5337e5c
Packages (Linux): fix snap package number detection on systems other …
CarterLi Sep 20, 2023
30ae8a2
Packages (Linux): fix dpkg package number detection
CarterLi Sep 20, 2023
ec8ee1a
TerminalFont: fix compiler warnings
CarterLi Sep 20, 2023
8cbe3f6
GPU (Linux): add full GPU detection support in WSL
CarterLi Sep 20, 2023
592de4c
CI: print dependencies
CarterLi Sep 21, 2023
560c2ac
Global: add `--module-key " "` as a magic case for hiding keys
CarterLi Sep 21, 2023
4d86c53
Custom: code cleanup
CarterLi Sep 22, 2023
a0efbd2
Title: make this module formattable
CarterLi Sep 22, 2023
34723bb
Colors: don't parse `--colors-*` as `--color *`
CarterLi Sep 22, 2023
d94fc32
Colors: support `--colors-key`
CarterLi Sep 22, 2023
db56195
Init (Windows): actually disable stdout buffer with `--no-buffer`
CarterLi Sep 22, 2023
cc6cdb9
Networking: support timeout on Linux
CarterLi Sep 22, 2023
ff1c3d9
Doc: update changelog
CarterLi Sep 22, 2023
597dadd
Fastfetch: add `-c` as a shortcut of `--load-config`
CarterLi Sep 23, 2023
5aa2798
Kernel (Windows): detect service pack version
CarterLi Sep 23, 2023
1caaa69
Platform: fix memleaks
CarterLi Sep 23, 2023
6ccf885
Bluetooth (Windows): fix mac address detection
CarterLi Sep 24, 2023
3e768dd
OS (Linux): detect detailed debian version
CarterLi Sep 24, 2023
ddbd198
Doc: update changelog
CarterLi Sep 24, 2023
ad0c2aa
Version: detect compiler and compile time
CarterLi Sep 24, 2023
6d1bde1
Wifi (macOS): silence compiler warnings
CarterLi Sep 25, 2023
bde2d67
CMake: disable UBSan
CarterLi Sep 25, 2023
40e5428
CMake: disable ASan on macOS
CarterLi Sep 26, 2023
a4bc07c
LocalIp (Windows): add ioCounter detection
CarterLi Sep 25, 2023
e4c1ec9
FFstrbuf: change `ffStrbufToUInt16` to more general function `ffStrbu…
CarterLi Sep 25, 2023
50c8809
LocalIp (Linux): add ioCounter detection
CarterLi Sep 25, 2023
57bd741
NetUsage (Linux): new module (WIP)
CarterLi Sep 26, 2023
fa4fccd
NetUsage (Windows): add detection support
CarterLi Sep 26, 2023
9004d9e
NetUsage (BSD): add detection support
CarterLi Sep 26, 2023
24a6efa
NetUsage: finish first working version
CarterLi Sep 26, 2023
6937390
Windows: pre-basic msvc support
CarterLi Sep 26, 2023
4843ded
LocalIp: filter `--localip-default-route-only` inside detection code
CarterLi Sep 26, 2023
917b049
LocalIP: cache default route value
CarterLi Sep 26, 2023
b29b78b
NetUsage: finish module
CarterLi Sep 26, 2023
b4f2991
NetUsage: finish docs
CarterLi Sep 26, 2023
3866f27
NetUsage (BSD): fix compiling
CarterLi Sep 26, 2023
154657b
NetUsage: rename to NetIO
CarterLi Sep 26, 2023
5e5c0b4
NetIO: improve performance
CarterLi Sep 27, 2023
a7a8f2f
NetIO (BSD): fix compiling
CarterLi Sep 27, 2023
8b357c2
Logo (Builtin): add Amazon LInux
CarterLi Sep 27, 2023
88c1248
Processing (Linux): always set `LANG` to `C` before executing child p…
CarterLi Sep 27, 2023
7caa8d4
CPU (Linux): try detecting CPU name using `lscpu`
CarterLi Sep 27, 2023
767f99c
CPU (Linux): only try `lscpu` on Linux
CarterLi Sep 27, 2023
eb0faec
NetIO (Android): fix building
CarterLi Sep 27, 2023
72d2ce4
Logo: add LainOS
CarterLi Sep 27, 2023
2899763
Shell: improve nu version detection performance
CarterLi Sep 27, 2023
9857f48
OS (Linux): actually display debian .x version
CarterLi Sep 28, 2023
18233a2
Disk (Windows): detect disk physical type
CarterLi Sep 30, 2023
e53acf4
Disk (Linux): detect physical type
CarterLi Sep 30, 2023
7f75d42
Logo (Builtin): tidy
CarterLi Oct 1, 2023
74ac023
Logo (Builtin): support Oracle Linux Server
CarterLi Oct 1, 2023
ddec13b
Fix Slackware
Oct 1, 2023
f7cc4fb
Doc: update changelog
CarterLi Oct 2, 2023
45f523a
Release v2.1.0
CarterLi Oct 2, 2023
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
54 changes: 36 additions & 18 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,24 +13,29 @@ jobs:
fail-fast: false
matrix:
os: [ubuntu-22.04, ubuntu-20.04]
compiler: [gcc, clang, "musl-gcc"]
compiler: [
{ cc: gcc, cxx: "g++" },
{ cc: clang, cxx: "clang++" },
{ cc: "musl-gcc", cxx: "musl-g++" }
]
enableFeatures: [ON, OFF]
exclude:
# The feature libraries are all build against glibc, so they can't be used with musl
- compiler: "musl-gcc"
- compiler: { cc: "musl-gcc", cxx: "musl-g++" }
enableFeatures: ON
runs-on: ${{ matrix.os }}
steps:
- name: checkout repository
uses: actions/checkout@v3
uses: actions/checkout@v4

- name: install required packages
run: sudo apt-get update && sudo apt-get install -y musl-dev musl-tools linux-headers-generic libpci-dev libvulkan-dev libwayland-dev libxrandr-dev libxcb-randr0-dev libdconf-dev libdbus-1-dev libmagickcore-dev libxfconf-0-dev libsqlite3-dev rpm librpm-dev libzstd-dev libegl-dev libglx-dev libosmesa6-dev ocl-icd-opencl-dev libnm-dev libpulse-dev
run: sudo apt-get update && sudo apt-get install -y musl-dev musl-tools linux-headers-generic libpci-dev libvulkan-dev libwayland-dev libxrandr-dev libxcb-randr0-dev libdconf-dev libdbus-1-dev libmagickcore-dev libxfconf-0-dev libsqlite3-dev rpm librpm-dev libzstd-dev libegl-dev libglx-dev libosmesa6-dev ocl-icd-opencl-dev libnm-dev libpulse-dev directx-headers-dev

- name: configure project
env:
CC: ${{ matrix.compiler }}
run: cmake -DCMAKE_BUILD_TYPE=RelWithDebInfo -DENABLE_LIBPCI=${{ matrix.enableFeatures }} -DENABLE_VULKAN=${{ matrix.enableFeatures }} -DENABLE_WAYLAND=${{ matrix.enableFeatures }} -DENABLE_XCB_RANDR=${{ matrix.enableFeatures }} -DENABLE_XCB=${{ matrix.enableFeatures }} -DENABLE_XRANDR=${{ matrix.enableFeatures }} -DENABLE_X11=${{ matrix.enableFeatures }} -DENABLE_GIO=${{ matrix.enableFeatures }} -DENABLE_DCONF=${{ matrix.enableFeatures }} -DENABLE_DBUS=${{ matrix.enableFeatures }} -DENABLE_XFCONF=${{ matrix.enableFeatures }} -DENABLE_SQLITE3=${{ matrix.enableFeatures }} -DENABLE_RPM=${{ matrix.enableFeatures }} -DENABLE_IMAGEMAGICK7=${{ matrix.enableFeatures }} -DENABLE_IMAGEMAGICK6=${{ matrix.enableFeatures }} -DENABLE_CHAFA=${{ matrix.enableFeatures }} -DENABLE_ZLIB=${{ matrix.enableFeatures }} -DENABLE_EGL=${{ matrix.enableFeatures }} -DENABLE_GLX=${{ matrix.enableFeatures }} -DENABLE_OSMESA=${{ matrix.enableFeatures }} -DENABLE_OPENCL=${{ matrix.enableFeatures }} -DENABLE_LIBNM=${{ matrix.enableFeatures }} -DENABLE_PULSE=${{ matrix.enableFeatures }} -DENABLE_JSONC=${{ matrix.enableFeatures }} .
CC: ${{ matrix.compiler.cc }}
CXX: ${{ matrix.compiler.cxx }}
run: cmake -DCMAKE_BUILD_TYPE=RelWithDebInfo -DENABLE_LIBPCI=${{ matrix.enableFeatures }} -DENABLE_VULKAN=${{ matrix.enableFeatures }} -DENABLE_WAYLAND=${{ matrix.enableFeatures }} -DENABLE_XCB_RANDR=${{ matrix.enableFeatures }} -DENABLE_XCB=${{ matrix.enableFeatures }} -DENABLE_XRANDR=${{ matrix.enableFeatures }} -DENABLE_X11=${{ matrix.enableFeatures }} -DENABLE_GIO=${{ matrix.enableFeatures }} -DENABLE_DCONF=${{ matrix.enableFeatures }} -DENABLE_DBUS=${{ matrix.enableFeatures }} -DENABLE_XFCONF=${{ matrix.enableFeatures }} -DENABLE_SQLITE3=${{ matrix.enableFeatures }} -DENABLE_RPM=${{ matrix.enableFeatures }} -DENABLE_IMAGEMAGICK7=${{ matrix.enableFeatures }} -DENABLE_IMAGEMAGICK6=${{ matrix.enableFeatures }} -DENABLE_CHAFA=${{ matrix.enableFeatures }} -DENABLE_ZLIB=${{ matrix.enableFeatures }} -DENABLE_EGL=${{ matrix.enableFeatures }} -DENABLE_GLX=${{ matrix.enableFeatures }} -DENABLE_OSMESA=${{ matrix.enableFeatures }} -DENABLE_OPENCL=${{ matrix.enableFeatures }} -DENABLE_LIBNM=${{ matrix.enableFeatures }} -DENABLE_PULSE=${{ matrix.enableFeatures }} -DENABLE_JSONC=${{ matrix.enableFeatures }} -DENABLE_DIRECTX_HEADERS=${{ matrix.enableFeatures }} .

- name: build project
run: cmake --build .
Expand All @@ -39,7 +44,7 @@ jobs:
run: ctest

- name: run fastfetch
run: ./fastfetch --disable-linewrap false --hide-cursor false --show-errors --no-buffer --load-config presets/all
run: ./fastfetch --stat --show-errors --no-buffer --load-config presets/all

- name: run flashfetch
run: ./flashfetch
Expand All @@ -54,10 +59,10 @@ jobs:
ffversion: ${{ steps.ffversion.outputs.ffversion }}
steps:
- name: checkout repository
uses: actions/checkout@v3
uses: actions/checkout@v4

- name: install required packages
run: sudo apt-get update && sudo apt-get install -y libpci-dev libvulkan-dev libwayland-dev libxrandr-dev libxcb-randr0-dev libdconf-dev libdbus-1-dev libmagickcore-dev libxfconf-0-dev libsqlite3-dev rpm librpm-dev libzstd-dev libegl-dev libglx-dev libosmesa6-dev ocl-icd-opencl-dev libnm-dev libpulse-dev
run: sudo apt-get update && sudo apt-get install -y libpci-dev libvulkan-dev libwayland-dev libxrandr-dev libxcb-randr0-dev libdconf-dev libdbus-1-dev libmagickcore-dev libxfconf-0-dev libsqlite3-dev rpm librpm-dev libzstd-dev libegl-dev libglx-dev libosmesa6-dev ocl-icd-opencl-dev libnm-dev libpulse-dev directx-headers-dev

- name: Initialize CodeQL
uses: github/codeql-action/init@v2
Expand All @@ -77,11 +82,14 @@ jobs:
run: ./fastfetch --list-features

- name: run fastfetch
run: time ./fastfetch --disable-linewrap false --hide-cursor false --show-errors --no-buffer --load-config presets/all
run: time ./fastfetch -c presets/ci

- name: run flashfetch
run: time ./flashfetch

- name: print dependencies
run: ldd fastfetch

- name: run tests
run: ctest

Expand All @@ -103,7 +111,7 @@ jobs:
contents: read
steps:
- name: checkout repository
uses: actions/checkout@v3
uses: actions/checkout@v4

- name: install required packages
run: brew install vulkan-loader molten-vk imagemagick chafa
Expand All @@ -126,11 +134,14 @@ jobs:
run: ./fastfetch --list-features

- name: run fastfetch
run: time ./fastfetch --disable-linewrap false --hide-cursor false --show-errors --no-buffer --load-config presets/all
run: time ./fastfetch -c presets/ci

- name: run flashfetch
run: time ./flashfetch

- name: print dependencies
run: otool -L fastfetch

- name: run tests
run: ctest

Expand All @@ -148,7 +159,7 @@ jobs:
contents: read
steps:
- name: checkout repository
uses: actions/checkout@v3
uses: actions/checkout@v4

- name: run VM
uses: vmactions/freebsd-vm@v0
Expand All @@ -159,8 +170,9 @@ jobs:
cmake -DSET_TWEAK=Off -DBUILD_TESTS=On .
cmake --build . --target package
./fastfetch --list-features
time ./fastfetch --disable-linewrap false --hide-cursor false --show-errors --no-buffer --load-config presets/all
time ./fastfetch -c presets/ci
time ./flashfetch
ldd fastfetch
ctest

- name: upload artifacts
Expand All @@ -180,7 +192,7 @@ jobs:
shell: msys2 {0}
steps:
- name: checkout repository
uses: actions/checkout@v3
uses: actions/checkout@v4

- name: setup-msys2
uses: msys2/setup-msys2@v2
Expand Down Expand Up @@ -213,11 +225,14 @@ jobs:
run: ./fastfetch --list-features

- name: run fastfetch
run: time ./fastfetch --disable-linewrap false --hide-cursor false --show-errors --no-buffer --load-config presets/all
run: time ./fastfetch -c presets/ci

- name: run flashfetch
run: time ./flashfetch

- name: print dependencies
run: ldd fastfetch

- name: run tests
run: ctest

Expand All @@ -244,7 +259,7 @@ jobs:
shell: msys2 {0}
steps:
- name: checkout repository
uses: actions/checkout@v3
uses: actions/checkout@v4

- name: setup-msys2
uses: msys2/setup-msys2@v2
Expand Down Expand Up @@ -274,11 +289,14 @@ jobs:
run: cp /clang32/bin/{OpenCL,vulkan-1}.dll .

- name: run fastfetch
run: time ./fastfetch --disable-linewrap false --hide-cursor false --show-errors --no-buffer --load-config presets/all
run: time ./fastfetch -c presets/ci

- name: run flashfetch
run: time ./flashfetch

- name: print dependencies
run: ldd fastfetch

- name: run tests
run: ctest

Expand Down
56 changes: 55 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,57 @@
# 2.1.0

This release introduces a new output format: JSON result

Changes:
* Users module detects and prints user login time by default. Specifying `--users-compact` to disable it
* Fastfetch now requires yyjson 0.8.0 or later, which is embeded in fastfetch source tree. If you build fastfetch with `-DENABLE_SYSTEM_YYJSON` cmake option, you must upgrade your yyjson package
* Reduced information supported by `--terminal-format`, `--shell-format`
* Some config presets (`devinfo` and `verbose`) are obseleted and removed. They are barely maintained and can be replaced with `--format json` now.
* Custom strings in `--module-key` and `--module-format` are no longer trimmed.
* `/boot` is hidden by default (FreeBSD, Disk)

Features:
* Add `--format json`, which prints system information as JSON format
* Add fast path for xfce4 version detection (DE, FreeBSD)
* Support contour terminal version and font detection (Terminal / TerminalFont)
* Support `kitty-direct` / `iterm` without specifying logo width / height. Note: in this case, the entre screen will be cleared.
* Support new flag `--logo-separate`. If true, print modules at bottom of the logo
* Support Apple Silicon CPU frequency detection (CPU, macOS)
* Support user login time detection (Users)
* Support winget package manager detection, guarded behind `--allow-slow-operations` (Packages, Windows)
* Print monitor type (built-in or external) (Display)
* Support full GPU detection in WSL (Linux, GPU)
* Add `--module-key " "` as a special case for hiding keys
* Support `--title-format`. See `fastfetch --help title-format` for detail
* Support `--colors-key` (Colors)
* Add `-c` as a shortcut of `--load-config`. Note it was used as the shortcut of `--color` before 2.0.5
* Support Windows Service Pack version detection (Kernel, Windows)
* Support Debian point releases detection (OS, Linux)
* Add new module `NetIO` which prints network throughput (usage) of specified interface. Note this module costs about 1 second to finish.
* Use `lscpu` to detect CPU name for ARM CPUs (CPU, Linux)

Bugfixes:
* Fix fastfetch hanging in specific environment (#561)
* Fix short read when reading from stdin (Logo)
* Fix `poll() timeout or failed` error when image is very large (Logo)
* Fix Termux Monet terminal version detection (Terminal)
* Fix zpool volumes detection (Disk, Linux)
* Fix external volumes detection (Disk, Linux)
* Fix snap package number detection on systems other than Ubuntu (Packages, Linux)
* Fix dpkg / apt package number detection (Packages, Linux)
* Fix bluetooth mac address detection (Bluetooth, Windows)

Logo:
* Add Afterglow
* Add Elbrus
* Update EvolutionOS
* Update AOSC OS
* Update Ubuntu_old
* Update Windows 11_small
* Add Amazon Linux
* Add LainOS
* Fix colors of Slackware

# 2.0.5

Bugfixes:
Expand All @@ -11,7 +65,7 @@ Features:
# 2.0.4

Bugfixes:
* Fix building on 32-bit FreeBSD (Memory, BSD)
* Fix building on 32-bit FreeBSD (Memory, FreeBSD)
* Fix `--file-raw` doesn't work (Logo)

Features:
Expand Down
Loading