Conversation
…`ro.build.display.id`
Usage: `fastfetch -s memory:swap -l none --dynamic-interval 1000 --debug --no-buffer` See #2171 (comment)
…ble` which is available on newer macOS version Adds a new CMake option to use usable memory size at the same time Fixes #2171
* Fix Oracle Solaris zpool build * Add memrchr fallback * Change to include fron extern * add new line * remove ; in zpool.c * Change wrapper to macro Also change README.md * Tweaks --------- Co-authored-by: Carter Li <CarterLi@users.noreply.github.com>
…rmation of `conhost.exe`
* Improves accurancy of detection of drive create time * Improves performance slightly * Removes remove drive check, `hideFolders` should be used instead
Thanks Github Copilot
Co-authored-by: Konnor Klercke <kklercke@brite.com>
Contributor
There was a problem hiding this comment.
Pull request overview
Release prep for v2.59.0, updating core platform detection and multiple modules (GPU, Disk, Title, Zpool, etc.) with new capabilities and improved cross-platform behavior.
Changes:
- Add PID + UID/SID exposure (Title formatting + JSON), and centralize pid/uid retrieval in
FFPlatform. - Improve/extend platform support (Solaris CI, ZFS/zpool adjustments, GNU/Hurd GPU detection) and reduce reliance on environment variables.
- Add debugging instrumentation and various detection accuracy fixes (Windows disk/process info, macOS memory used calc, etc.).
Reviewed changes
Copilot reviewed 55 out of 55 changed files in this pull request and generated 4 comments.
Show a summary per file
| File | Description |
|---|---|
| src/modules/title/title.c | Add {user-id} and {pid} format args + JSON fields |
| src/logo/logo.c | Simplify logo color fallback expressions |
| src/logo/builtin.c | Extend NixOS builtin logo colors (6-color) |
| src/logo/ascii/nixos_small.txt | Update small NixOS ASCII logo color slots |
| src/logo/ascii/nixos.txt | Update NixOS ASCII logo color slots |
| src/detection/zpool/zpool.c | Solaris libzfs compatibility tweak for zpool props |
| src/detection/vulkan/vulkan.c | Add detailed Vulkan detection debug logging |
| src/detection/users/users_linux.c | Use cached platform uid instead of getuid() |
| src/detection/terminalshell/terminalshell_windows.c | Use KnownFolder APIs + console host PID query |
| src/detection/swap/swap_windows.c | Simplify swap detection via NtQuerySystemInformation |
| src/detection/swap/swap_sunos.c | Align swap table buffer |
| src/detection/physicaldisk/physicaldisk_windows.c | Align DeviceIoControl buffer |
| src/detection/packages/packages_windows.c | Align buffer + KnownFolder for ProgramData |
| src/detection/opengl/opengl_shared.c | Add detailed EGL/OpenGL debug logging |
| src/detection/memory/memory_windows.c | Add clarifying comment about GlobalMemoryStatusEx internals |
| src/detection/memory/memory_apple.c | Change macOS used-memory calculation + optional memsize_usable |
| src/detection/media/media_linux.c | Include memrchr declaration header |
| src/detection/lm/lm_linux.c | Use cached platform uid instead of getuid() |
| src/detection/gpu/gpu_pci.c | Include memrchr declaration header |
| src/detection/gpu/gpu_linux.c | Minor fallback expression simplification |
| src/detection/gpu/gpu_gnu.c | New GNU/Hurd PCI GPU detection implementation |
| src/detection/gpu/gpu_general.c | Remove libpciaccess-based GPU detection |
| src/detection/gpu/gpu.c | Add debug logging + improved fallback flow visibility |
| src/detection/displayserver/linux/wmde.c | Use cached platform uid instead of getuid() |
| src/detection/displayserver/displayserver_android.c | Adjust Android DE detection logic for RedMagicOS/Pixel |
| src/detection/disk/disk_windows.c | Rework Windows disk detection using NT APIs (no remote probing hacks) |
| src/detection/cpu/cpu_arm.h | Add/adjust ARM/NVIDIA part names |
| src/detection/bootmgr/bootmgr_windows.c | Use NtCurrentProcess() helper |
| src/detection/bootmgr/bootmgr_linux.c | Align EFI var buffer |
| src/detection/bootmgr/bootmgr_bsd.c | Align EFI var buffer |
| src/detection/bluetoothradio/bluetoothradio_windows.c | Adjust Win7 DLL loading choice |
| src/detection/bluetooth/bluetooth_windows.cpp | Add ffStrbufCreateWSV helper usage |
| src/detection/bluetooth/bluetooth_windows.c | Adjust Win7 DLL loading choice |
| src/common/windows/unicode.hpp | Add ffStrbufCreateWSV(std::wstring_view) |
| src/common/windows/nt.h | Add process device map struct + NtCurrentProcess() macro |
| src/common/memrchr.h | Declare memrchr consistently |
| src/common/impl/processing_windows.c | Use cached pid + NT APIs for process exit/image name |
| src/common/impl/netif_linux.c | Use cached platform pid instead of getpid() |
| src/common/impl/netif_apple.c | Use cached platform pid (cast to pid_t for routing msgs) |
| src/common/impl/memrchr.c | Provide fallback memrchr implementation |
| src/common/impl/io_unix.c | Make token pointer const-correct |
| src/common/impl/init.c | Feature list updates (remove pciaccess, add Apple memsize_usable flag) |
| src/common/impl/commandoption.c | Simplify NULL fallback using GCC extension |
| src/common/impl/FFstrbuf.c | Make strchr result pointer const-correct |
| src/common/impl/FFPlatform_windows.c | Populate pid + derive SID from username |
| src/common/impl/FFPlatform_unix.c | Populate pid/uid + use passwd over env for username |
| src/common/arrayUtils.h | Prefer _Countof when supported |
| src/common/apple/smc_temps.c | Fix integer-to-double conversion for 64-bit values |
| src/common/FFPlatform.h | Add pid/uid or sid fields to platform state |
| doc/json_schema.json | Update schema docs for CPU/Packages/Title/Zpool format placeholders |
| debian/changelog.tpl | Add new Debian/Ubuntu changelog stanza |
| README.md | Mention Solaris support |
| CMakeLists.txt | Bump version, add Solaris CI support bits, memrchr fallback, GNU GPU change, Apple option |
| CHANGELOG.md | Add 2.59.0 release notes |
| .github/workflows/ci.yml | Update actions versions + add OmniOS/Solaris jobs and tweaks |
Comment on lines
+112
to
118
| PWSTR pPath = NULL; | ||
| if (SUCCEEDED(SHGetKnownFolderPath(&FOLDERID_ProgramData, KF_FLAG_DEFAULT, NULL, &pPath))) | ||
| { | ||
| ffStrbufSetWS(&scoopPath, pPath); | ||
| CoTaskMemFree(pPath); | ||
| } | ||
| ffStrbufAppendS(&scoopPath, "/scoop"); |
There was a problem hiding this comment.
If SHGetKnownFolderPath(FOLDERID_ProgramData, ...) fails, scoopPath remains empty and the code appends "/scoop", producing a relative path like "/scoop/apps/...". Please add a fallback (e.g. getenv("ProgramData")) when the known-folder query fails, or return an explicit error so detection doesn’t silently scan the wrong location.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.