Skip to content

Commit f6702d8

Browse files
authored
Merge pull request #422 from LinusDierheimer/dev
Release 1.10.0
2 parents 4b253aa + b1a779c commit f6702d8

File tree

147 files changed

+3643
-1395
lines changed

Some content is hidden

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

147 files changed

+3643
-1395
lines changed

.github/workflows/push.yml

Lines changed: 104 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,44 @@ on:
55
- pull_request
66

77
jobs:
8+
linux-buildtest:
9+
name: Linux build test
10+
permissions:
11+
contents: read
12+
strategy:
13+
fail-fast: false
14+
matrix:
15+
os: [ubuntu-22.04, ubuntu-20.04]
16+
compiler: [gcc, clang]
17+
enableFeatures: [ON, OFF]
18+
runs-on: ${{ matrix.os }}
19+
steps:
20+
- name: checkout repository
21+
uses: actions/checkout@v3
22+
23+
- name: install required packages
24+
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 libcjson-dev libnm-dev libpulse-dev
25+
26+
- name: configure project
27+
env:
28+
CC: ${{ matrix.compiler }}
29+
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_LIBCJSON=${{ matrix.enableFeatures }} -DENABLE_LIBNM=${{ matrix.enableFeatures }} -DENABLE_PULSE=${{ matrix.enableFeatures }} .
30+
31+
- name: build project
32+
run: cmake --build .
33+
34+
- name: run tests
35+
run: ctest
36+
37+
- name: run fastfetch
38+
run: ./fastfetch --disable-linewrap false --hide-cursor false --show-errors true --load-config presets/all
39+
40+
- name: run flashfetch
41+
run: ./flashfetch
42+
843
linux:
944
name: Linux
10-
runs-on: ubuntu-latest
45+
runs-on: ubuntu-20.04 # 22.04 ships a newer version of glibc than debian stable, allow those people to use the debian package
1146
permissions:
1247
security-events: write
1348
contents: read
@@ -18,7 +53,7 @@ jobs:
1853
uses: actions/checkout@v3
1954

2055
- name: install required packages
21-
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 libcjson-dev libnm-dev
56+
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 libcjson-dev libnm-dev libpulse-dev
2257

2358
- name: Initialize CodeQL
2459
uses: github/codeql-action/init@v2
@@ -130,8 +165,8 @@ jobs:
130165
name: fastfetch-freebsd
131166
path: ./fastfetch-*.*
132167

133-
windows:
134-
name: Windows
168+
win64:
169+
name: Win64
135170
runs-on: windows-latest
136171
permissions:
137172
security-events: write
@@ -153,22 +188,6 @@ jobs:
153188
- name: print msys version
154189
run: uname -a
155190

156-
# https://github.com/msys2/MINGW-packages/issues/13524#event-7555720785
157-
- name: create OpenCL.pc
158-
run: |
159-
cat > /clang64/lib/pkgconfig/OpenCL.pc << EOF
160-
prefix=/clang64
161-
exec_prefix=${prefix}
162-
libdir=${exec_prefix}/lib
163-
includedir=${prefix}/include
164-
165-
Name: OpenCL
166-
Description: Open Computing Language generic Installable Client Driver Loader
167-
Version: 2022.09.30-1
168-
Libs: -L${libdir} -lOpenCL.dll
169-
Cflags: -I${includedir}
170-
EOF
171-
172191
- name: Initialize CodeQL
173192
uses: github/codeql-action/init@v2
174193
with:
@@ -184,7 +203,7 @@ jobs:
184203
uses: github/codeql-action/analyze@v2
185204

186205
- name: copy necessary dlls
187-
run: cp /clang64/bin/{libcjson,libOpenCL,vulkan-1}.dll .
206+
run: cp /clang64/bin/{libcjson,OpenCL,vulkan-1}.dll .
188207

189208
- name: list features
190209
run: ./fastfetch --list-features
@@ -199,13 +218,71 @@ jobs:
199218
run: ctest
200219

201220
- name: create zip archive
202-
run: zip fastfetch-$(./fastfetch --version-raw)-Windows.zip *.dll fastfetch.exe flashfetch.exe
221+
run: zip fastfetch-$(./fastfetch --version-raw)-Win64.zip *.dll fastfetch.exe flashfetch.exe
222+
223+
- name: upload artifacts
224+
uses: actions/upload-artifact@v3
225+
with:
226+
name: fastfetch-win64
227+
path: ./fastfetch-*-Win64.zip
228+
229+
win32:
230+
name: Win32
231+
runs-on: windows-latest
232+
permissions:
233+
security-events: write
234+
contents: read
235+
defaults:
236+
run:
237+
shell: msys2 {0}
238+
steps:
239+
- name: checkout repository
240+
uses: actions/checkout@v3
241+
242+
- name: setup-msys2
243+
uses: msys2/setup-msys2@v2
244+
with:
245+
msystem: CLANG32
246+
update: true
247+
install: git zip mingw-w64-clang-i686-cmake mingw-w64-clang-i686-clang mingw-w64-clang-i686-cjson mingw-w64-clang-i686-vulkan-loader mingw-w64-clang-i686-opencl-icd
248+
249+
- name: print msys version
250+
run: uname -a
251+
252+
- name: Initialize CodeQL
253+
uses: github/codeql-action/init@v2
254+
with:
255+
languages: c, cpp
256+
257+
- name: configure project
258+
run: env PKG_CONFIG_PATH=/clang32/lib/pkgconfig/:$PKG_CONFIG_PATH cmake -DSET_TWEAK=Off -DBUILD_TESTS=On .
259+
260+
- name: build project
261+
run: cmake --build .
262+
263+
- name: perform CodeQL analysis
264+
uses: github/codeql-action/analyze@v2
265+
266+
- name: copy necessary dlls
267+
run: cp /clang32/bin/{libcjson,OpenCL,vulkan-1}.dll .
268+
269+
- name: run fastfetch
270+
run: time ./fastfetch --disable-linewrap false --hide-cursor false --show-errors true --load-config presets/all
271+
272+
- name: run flashfetch
273+
run: time ./flashfetch
274+
275+
- name: run tests
276+
run: ctest
277+
278+
- name: create zip archive
279+
run: zip fastfetch-$(./fastfetch --version-raw)-win32.zip *.dll fastfetch.exe flashfetch.exe
203280

204281
- name: upload artifacts
205282
uses: actions/upload-artifact@v3
206283
with:
207-
name: fastfetch-windows
208-
path: ./fastfetch-*-Windows.zip
284+
name: fastfetch-win32
285+
path: ./fastfetch-*-win32.zip
209286

210287
release:
211288
if: github.event_name == 'push' && github.ref == 'refs/heads/master' && github.repository == 'LinusDierheimer/fastfetch'
@@ -215,7 +292,8 @@ jobs:
215292
- linux
216293
- macos
217294
- freebsd
218-
- windows
295+
- win64
296+
- win32
219297
permissions:
220298
contents: write
221299
steps:
@@ -235,4 +313,4 @@ jobs:
235313
tag: ${{ needs.linux.outputs.ffversion }}
236314
commit: ${{ github.sha }}
237315
artifactErrorsFailBuild: true
238-
artifacts: fastfetch-linux/*,fastfetch-macos/*,fastfetch-freebsd/*,fastfetch-windows/*
316+
artifacts: fastfetch-linux/*,fastfetch-macos/*,fastfetch-freebsd/*,fastfetch-win64/*,fastfetch-win32/*

CHANGELOG.md

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,37 @@
1+
# 1.10.0
2+
3+
Notable Changes:
4+
5+
* With the support of Win32 platform, original Windows 64bit artifact file is renamed to Win64 to avoid possible confusion
6+
7+
Features:
8+
* Bluetooth module
9+
* Sound module
10+
* Gamepad module
11+
* Support colored percentage numbers output (#409)
12+
* Support `--localip-compact-type` option (#408)
13+
* Terminator terminal font detection (@Zerogiven, #415)
14+
* Windows 32bit compatibility
15+
* Support global configuration in MSYS2 environment (Windows)
16+
* Support GPU driver version detection on Windows 11
17+
* Support scaled resolution detection for wayland (Linux)
18+
19+
Bugfixes:
20+
21+
* Fix build with older libnm versions
22+
* Fix a rare case that fails to detect terminal
23+
* Fix Muffin detection (@Zerogiven, #411)
24+
* Fix IPv6 detection (Windows)
25+
* Fix scoop package count detection when scoop is installed in non-default path (Windows, #417)
26+
* Fix UB reported by clang
27+
* Honor $SCOOP when detecting scoop packages (#417)
28+
29+
Other:
30+
31+
* Simplified wmtheme output format (Windows)
32+
* Improved GPU detection performance on Windows 11
33+
* Lastest Mac model identifier support (macOS)
34+
135
# 1.9.1
236

337
Bugfixes:

0 commit comments

Comments
 (0)