Skip to content

Commit 80fb41a

Browse files
authored
Merge pull request fastfetch-cli#1001 from fastfetch-cli/dev
Release: v2.15.0
2 parents c3e5222 + 8371153 commit 80fb41a

Some content is hidden

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

83 files changed

+1677
-8236
lines changed

.github/ISSUE_TEMPLATE/bug_report.md

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -7,18 +7,18 @@ assignees: ''
77

88
---
99

10-
Be sure to read [FAQ](https://github.com/fastfetch-cli/fastfetch?tab=readme-ov-file#faq) before submitting a new issue.
10+
Be sure to read the [FAQ](https://github.com/fastfetch-cli/fastfetch?tab=readme-ov-file#faq) before submitting a new issue.
1111

12-
<!-- We will try hard to solve the issue. However since platforms and hardwares vary greatly, it can be hard to find the root cause is. Providing following information may help us greatly. Thanks in advance -->
12+
<!-- We will try hard to solve the issue. However since platforms and hardwares vary greatly, it can be hard to find the root cause of an issue. Providing the following information may help us greatly. Thanks in advance! -->
1313

1414
# General description of bug:
1515

1616
* What happened:
1717
* What should happen:
1818
* Fastfetch version used: <!-- please use the latest version, if possible -->
1919
* Did it work in an older version: <!-- if yes, which version -->
20-
* Where did you get the binary: <!-- Github Release / Github Actions / Installed with a package manager (What package manager) / Built from source yourself -->
21-
* Does this issue still occurs in [the latest dev build](https://github.com/fastfetch-cli/fastfetch/actions/)?
20+
* Where did you get the binary: <!-- GitHub release / GitHub Actions / installed with a package manager (please tell us which package manager you used!) / built from source yourself -->
21+
* Does this issue still occur in [the latest dev build](https://github.com/fastfetch-cli/fastfetch/actions/)?
2222

2323
# Often helpful information:
2424

@@ -27,7 +27,7 @@ Screenshot:
2727

2828
The content of the configuration file you use (if any):
2929
```
30-
//paste here
30+
// Paste here
3131
```
3232

3333
Output of `fastfetch -c ci.jsonc --format json`:
@@ -36,15 +36,15 @@ Note that this output will contain you public IP. If it is not relevant for the
3636
-->
3737

3838
```
39-
//paste here
39+
// Paste here
4040
```
4141

4242
Output of `fastfetch --list-features`:
4343
```
44-
//paste here
44+
// Paste here
4545
```
4646

47-
## If fastfatch crashed or freezed
47+
## If fastfatch crashed or froze
4848

4949
Paste the stacktrace here. You may get it with:
5050

@@ -65,16 +65,16 @@ If you cannot do the instructions above, please upload the core dump file:
6565

6666
Use `time fastfetch --stat` to show time usage for each module.
6767

68-
## If my image logo didn't show / work
68+
## If an image or logo didn't show
6969

70-
<!-- Please make sure the terminal does support the image protocol you used. Note Gnome terminal doesn't support any image protocols -->
70+
<!-- Please make sure your terminal supports the image protocol you used. Note that GNOME Terminal doesn't support any image protocols. -->
7171

7272
* The image protocol you used:
7373
* The terminal you used:
7474
* Upload the image file here, or paste the image URL:
7575
* Does it work with `--logo-width {WIDTH} --logo-height {HEIGHT}`?
7676

77-
## If fastfetch behaves incorrectly on shell starting
77+
## If fastfetch behaves incorrectly on shell startup
7878

79-
* The bug is reproduceable with fresh / clean shell configuration (i.e. `fastfetch` is the single line of `.zshrc` or `~/.config/fish/config.fish`):
79+
* The bug is reproducible with a clean shell configuration (i.e. `fastfetch` is the only line in `.zshrc` or `~/.config/fish/config.fish`):
8080
* Does `sleep 1` before running `fastfetch` work?

CHANGELOG.md

Lines changed: 31 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,27 @@
1+
# 2.15.0
2+
3+
Changes:
4+
* `--bar-border <?bool>` has been changed to `--bar-border-left <string>` and `--bar-border-right <string>`, which are used for customizing the style of bar border.
5+
* `--bar-border-left '' --bar-border-right ''` can be used to disable the border
6+
7+
Features:
8+
* Add ability to skip installing license with INSTALL_LICENSE option (CMake)
9+
* Make it possible to shorten the theme and icons output (Theme / Icons)
10+
* Support `-l '?'` to show a question mark
11+
* Add new module `CPUCache` to display CPU cache sizes (CPUCache)
12+
* In `--<module>-format`, `{#keys}` and `{#title}` can be used to reference the color of keys and title
13+
* Improve speed of Guix package detection (Packages, Linux)
14+
* Assume wm plugins are daemon processes to improve performance (WM, macOS)
15+
16+
Bugfixes:
17+
* Remove shebangs from completions (#980)
18+
* Fix while chars not visible in terminal of light theme (Logo)
19+
* Normalize bright colors to fix color display in Apple Terminal (#991, Colors)
20+
* Correctly capitalize GNOME (#997, DE, Linux)
21+
* Fix segfault on system using turkish language (#995, InitSystem, Linux)
22+
* Fix kubuntu detection (#1000, OS, Linux)
23+
* Don't display duplicate entries (OS, Linux)
24+
125
# 2.14.0
226

327
Features:
@@ -7,12 +31,14 @@ Features:
731
* Print all presets in `--list-presets` for better Windows support (Windows)
832
* Support for guix package manager detection (Packages, Linux)
933
* Support named variable placeholders in custom module formattion string (#796)
10-
* `--title-format '{user-name-colored}{at-symbol-colored}{host-name-colored}'` is equivalent to `--title-format '{6}{7}{8}'`
34+
* `--title-format '{user-name-colored}{at-symbol-colored}{host-name-colored}'` is now equivalent to `--title-format '{6}{7}{8}'`
1135
* Support named color placeholders in custom module formattion string
12-
* `--<module>-format '{#red}'` is equivalent to `--<module>-format '{#31}'`
36+
* `--<module>-format '{#red}'` is now equivalent to `--<module>-format '{#31}'`
1337
* `'{#red}'` or `'{#31}'` is preferred over `\u001b[31m` because is more readable and `--pipe` aware (will be ignored in pipe mode)
1438
* Supported in `Custom` module too
1539
* See `fastfetch -h format` for detail
40+
* Add new module `InitSystem`, which detects the name of init system
41+
* i.e. process name of pid1. `init`, `systemd`, etc
1642
* Add option `--color-separator` to set the color of key-value separators
1743
* Support Guix package manager count (#792, Packages, Linux)
1844
* Improve python based shell detection (#977, Shell, macOS)
@@ -254,7 +280,7 @@ Features:
254280
* Improve GPU detection on Linux (GPU, Linux)
255281
* Support GPU memory usage detection for AMD GPUs
256282
* Support GPU frequency detection for Intel GPUs
257-
* Improve performance of Gnome version detection (DE, Linux)
283+
* Improve performance of GNOME version detection (DE, Linux)
258284
* Improve performance of kitty version detection (Terminal, Linux)
259285
* Detect refresh rate when using `--ds-force-drm sysfs-only` (Display, Linux)
260286
* Add option `--ts-version` to disable terminal and shell version detection. Mainly for benchmarking purposes
@@ -961,7 +987,7 @@ Bugfixes:
961987
* Fix Windows drives detection in WSL (Linux, Disk)
962988
* Fix CPU temp detection (FreeBSD, CPU)
963989
* Fix disk detection (Android, Disk)
964-
* Fix Gnome Terminal version and font detection (FreeBSD, TerminalFont)
990+
* Fix GNOME Terminal version and font detection (FreeBSD, TerminalFont)
965991
* Fix crash on newer wayland desktops (Linux, Display, #477)
966992
* Fix vendor detection for Intel GPU (macOS, GPU)
967993
* Fix possible crashes on Windows Server (Windows, GPU, #484)
@@ -987,7 +1013,7 @@ Features:
9871013
* Add mac address detection `--localip-show-mac` (LocalIP, #451)
9881014

9891015
Bugfixes:
990-
* Fix Gnome version detection on Fedora (DE)
1016+
* Fix GNOME version detection on Fedora (DE)
9911017
* Fix Windows drives detection in WSL (Disk)
9921018

9931019
Changes:

CMakeLists.txt

Lines changed: 16 additions & 7 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.14.0
4+
VERSION 2.15.0
55
LANGUAGES C
66
DESCRIPTION "Fast neofetch-like system information tool"
77
HOMEPAGE_URL "https://github.com/fastfetch-cli/fastfetch"
@@ -76,6 +76,7 @@ option(ENABLE_PROPRIETARY_GPU_DRIVER_API "Enable proprietary GPU driver API (NVM
7676
option(BUILD_TESTS "Build tests" OFF) # Also create test executables
7777
option(SET_TWEAK "Add tweak to project version" ON) # This is set to off by github actions for release builds
7878
option(IS_MUSL "Build with musl libc" OFF) # Used by Github Actions
79+
option(INSTALL_LICENSE "Install license into /usr/share/licenses" ON)
7980

8081
set(BINARY_LINK_TYPE_OPTIONS dlopen dynamic static)
8182
set(BINARY_LINK_TYPE dlopen CACHE STRING "How to link fastfetch")
@@ -330,6 +331,7 @@ set(LIBFASTFETCH_SRC
330331
src/modules/chassis/chassis.c
331332
src/modules/colors/colors.c
332333
src/modules/cpu/cpu.c
334+
src/modules/cpucache/cpucache.c
333335
src/modules/cpuusage/cpuusage.c
334336
src/modules/cursor/cursor.c
335337
src/modules/custom/custom.c
@@ -410,6 +412,7 @@ if(LINUX)
410412
src/detection/brightness/brightness_linux.c
411413
src/detection/chassis/chassis_linux.c
412414
src/detection/cpu/cpu_linux.c
415+
src/detection/cpucache/cpucache_linux.c
413416
src/detection/cpuusage/cpuusage_linux.c
414417
src/detection/cursor/cursor_linux.c
415418
src/detection/bluetooth/bluetooth_linux.c
@@ -480,6 +483,7 @@ elseif(ANDROID)
480483
src/detection/brightness/brightness_nosupport.c
481484
src/detection/chassis/chassis_nosupport.c
482485
src/detection/cpu/cpu_linux.c
486+
src/detection/cpucache/cpucache_linux.c
483487
src/detection/cursor/cursor_nosupport.c
484488
src/detection/cpuusage/cpuusage_linux.c
485489
src/detection/disk/disk_linux.c
@@ -540,6 +544,7 @@ elseif(BSD)
540544
src/detection/brightness/brightness_bsd.c
541545
src/detection/chassis/chassis_bsd.c
542546
src/detection/cpu/cpu_bsd.c
547+
src/detection/cpucache/cpucache_nosupport.c
543548
src/detection/cpuusage/cpuusage_bsd.c
544549
src/detection/cursor/cursor_linux.c
545550
src/detection/disk/disk_bsd.c
@@ -610,6 +615,7 @@ elseif(APPLE)
610615
src/detection/brightness/brightness_apple.c
611616
src/detection/chassis/chassis_nosupport.c
612617
src/detection/cpu/cpu_apple.c
618+
src/detection/cpucache/cpucache_apple.c
613619
src/detection/cpuusage/cpuusage_apple.c
614620
src/detection/cursor/cursor_apple.m
615621
src/detection/disk/disk_bsd.c
@@ -671,6 +677,7 @@ elseif(WIN32)
671677
src/detection/brightness/brightness_windows.cpp
672678
src/detection/chassis/chassis_windows.c
673679
src/detection/cpu/cpu_windows.c
680+
src/detection/cpucache/cpucache_windows.c
674681
src/detection/cpuusage/cpuusage_windows.c
675682
src/detection/cursor/cursor_windows.c
676683
src/detection/disk/disk_windows.c
@@ -1157,13 +1164,13 @@ install(
11571164
)
11581165

11591166
install(
1160-
FILES "${CMAKE_SOURCE_DIR}/completions/bash"
1167+
FILES "${CMAKE_SOURCE_DIR}/completions/${CMAKE_PROJECT_NAME}.bash"
11611168
DESTINATION "${CMAKE_INSTALL_DATAROOTDIR}/bash-completion/completions"
11621169
RENAME "${CMAKE_PROJECT_NAME}"
11631170
)
11641171

11651172
install(
1166-
FILES "${CMAKE_SOURCE_DIR}/completions/fish"
1173+
FILES "${CMAKE_SOURCE_DIR}/completions/${CMAKE_PROJECT_NAME}.fish"
11671174
DESTINATION "${CMAKE_INSTALL_DATAROOTDIR}/fish/vendor_completions.d"
11681175
RENAME "${CMAKE_PROJECT_NAME}.fish"
11691176
)
@@ -1173,10 +1180,12 @@ install(
11731180
DESTINATION "${CMAKE_INSTALL_DATAROOTDIR}/${CMAKE_PROJECT_NAME}"
11741181
)
11751182

1176-
install(
1177-
FILES "${CMAKE_SOURCE_DIR}/LICENSE"
1178-
DESTINATION "${CMAKE_INSTALL_DATAROOTDIR}/licenses/${CMAKE_PROJECT_NAME}"
1179-
)
1183+
if(INSTALL_LICENSE)
1184+
install(
1185+
FILES "${CMAKE_SOURCE_DIR}/LICENSE"
1186+
DESTINATION "${CMAKE_INSTALL_DATAROOTDIR}/licenses/${CMAKE_PROJECT_NAME}"
1187+
)
1188+
endif()
11801189

11811190
install(
11821191
FILES "${PROJECT_BINARY_DIR}/fastfetch.1"

completions/bash renamed to completions/fastfetch.bash

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,3 @@
1-
#!/usr/bin/env bash
2-
31
__fastfetch_complete_help()
42
{
53
local __ff_helps=(

completions/fish renamed to completions/fastfetch.fish

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,3 @@
1-
#!/usr/bin/env fish
2-
31
if not type -q fastfetch
42
exit
53
end

doc/fastfetch.1.in

Lines changed: 28 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ the exit code will be non\-zero.
2626
.SS "Informative Options"
2727
.TP
2828

29-
.B \-h, \-\-help \fI [command]
29+
.B \-h, \-\-help \fI[command]
3030
Show help output, displaying all available options or help for given command
3131
.TP
3232

@@ -43,15 +43,15 @@ List search paths of presets and logos
4343
.TP
4444

4545
.B \-\-list\-logos
46-
List available logos, they can be loaded with \fI \-\-logo
46+
List available logos, they can be loaded with \fI\-\-logo
4747
.TP
4848

4949
.B \-\-list\-modules
5050
List available modules
5151
.TP
5252

5353
.B \-\-list\-presets
54-
List available presets, they can be loaded with \fI \-\-config
54+
List available presets, they can be loaded with \fI\-\-config
5555
.TP
5656

5757
.B \-\-list\-features
@@ -64,55 +64,65 @@ Print available logos
6464

6565
.B \-\-print\-structure
6666
Print the default structure
67+
.TP
68+
69+
.B \-\-format \fI<type>
70+
Set the output format. Besides the
71+
.I default
72+
format, only
73+
.I json
74+
is supported currently.
6775

6876

6977
.SS "Display Options"
7078
.TP
7179

72-
.B \-l, \-\-logo \fI <logo>
80+
.B \-l, \-\-logo \fI<logo>
7381
Set the logo to display
7482
.TP
7583

76-
.B \-s, \-\-structure \fI <structure>
84+
.B \-s, \-\-structure \fI<structure>
7785
Set the structure of the fetch. For details about the structure,
7886
see the CONFIGURATION section.
7987

8088

8189
.SS "Config Options"
8290
.TP
8391

84-
.B \-c, \-\-config \fI <config>
85-
Use the specified config file or preset. If "none", disable further config
86-
loading. For details about config files, see the CONFIGURATION section
92+
.B \-c, \-\-config \fI<config>
93+
Use the specified config file or preset. If
94+
.I none
95+
is specified, disable further config loading. For details about
96+
config files, see the CONFIGURATION section
8797
.TP
8898

89-
.B \-\-gen\-config \fI [file]
99+
.B \-\-gen\-config \fI[file]
90100
Generate a config file with options specified on the command line.
91-
If \fI file \fR is specified, the configuration will written to the
101+
If \fIfile\fR is specified, the configuration will written to the
92102
file, otherwise it will be written to stdout.
93103
.TP
94104

95-
.B \-\-gen\-config\-force \fI [file]
96-
Same as \fB \-\-gen\-config\fR, but overwrites existing config
105+
.B \-\-gen\-config\-force \fI[file]
106+
Same as \fB\-\-gen\-config\fR, but overwrites existing config
97107
.TP
98108

99109

100-
To list all options, use \fB \-\-help\fR this will also print all available module options.
110+
To list all options, use \fB\-\-help\fR. It will also print all available module options.
101111

102112
.SH CONFIGURATION
103113
.SS "Fetch Structure"
104114
The structure of a fetch describes the modules that should be included in
105115
the output. It consists of a string of modules, separated by a colon (:).
106-
To list all available modules, use \fB \-\-list\-modules \fR
116+
To list all available modules, use \fB\-\-list\-modules\fR
107117

108118
.SS "Config Files"
109119

110120
Fastfetch uses JSONC based format for configuration. Fastfetch doesn't generate
111-
config file automatically; it should be generated manually by \fB \-\-gen\-config\fR.
121+
config file automatically; it should be generated manually by \fB\-\-gen\-config\fR.
112122
The config file will be saved in \fB~/.config/fastfetch/config.jsonc\fR by default.
113123

114-
A JSONC config file is a JSON file that also supports comments with (//). Those
115-
files must have the extension '.jsonc'.
124+
A JSONC config file is a JSON file that also supports comments with (// and /* */).
125+
Those files must have the extension '.jsonc'.
116126

117127
The specified configuration/preset files are searched in the following order:
118128

@@ -128,4 +138,4 @@ Fastfetch provides some default presets. List them with \fB\-\-list\-presets\fR.
128138
.BR neofetch (1)
129139

130140
.SH BUGS
131-
Please report bugs to:\fI https://github.com/fastfetch\-cli/fastfetch/issues \fR
141+
Please report bugs to: \fIhttps://github.com/fastfetch\-cli/fastfetch/issues\fR

0 commit comments

Comments
 (0)