AI News HubLIVE
サイト内リライト2 分で読了

翻訳待ち:Show HN: AirStats – Mac menu bar system monitor, 0.046% CPU idle, MIT

AI サービスが一時的に利用できないため、復旧後に翻訳を補完します。ソース概要:Notifications You must be signed in to change notification settings Fork 0 Star 3 BranchesTags Open more actions menu Latest commit History 87 Commits 87 Commits Folders and files NameName Last commit message Last commi…

ソースHacker News AI著者: byrencodes

AI サービスが一時的に利用できないため、復旧後に翻訳を補完します。

Notifications You must be signed in to change notification settings Fork 0 Star 3 BranchesTags Open more actions menu Latest commit History 87 Commits 87 Commits Folders and files NameName Last commit message Last commit date .github/workflows .github/workflows Resources Resources Scripts Scripts Sources Sources Tests/AirStatKitTests Tests/AirStatKitTests docs docs .gitignore .gitignore CONTRIBUTING.md CONTRIBUTING.md LICENSE LICENSE Package.resolved Package.resolved Package.swift Package.swift README.md README.md Repository files navigation AirStats is a system monitor for the Mac menu bar. It reads CPU, memory, GPU, network, disk, battery, temperature, process and host statistics from the kernel and shows them in three places: the menu bar itself, a panel that drops down when you click the status item, and a floating overlay you can leave on your desktop. It is built to be genuinely light. A menu bar monitor runs all day, every day, so AirStats holds a few megabytes and a fraction of a percent of one core rather than the tens of megabytes its peers take. It has no Dock icon, and reads the system through Mach, IOKit, sysctl and CoreWLAN. Requirements macOS 14 or later Apple silicon or Intel Install Download it from airstats.app, open the dmg and drag the app to Applications. It is signed and notarized, so it opens with no warning. Or with Homebrew: brew install --cask byrencheema/tap/airstats AirStats updates itself with Sparkle. It asks airstats.app once a week whether a newer version exists, and installs one only when you say so. Both of those can be turned off in General settings. Build from source You need the Swift 6 toolchain that ships with Xcode 16. Scripts/build.sh release cp -R .build/arm64-apple-macosx/release/AirStats.app /Applications/ open /Applications/AirStats.app Scripts/build.sh wraps the SwiftPM binary in a .app bundle, copies Sparkle.framework into Contents/Frameworks, and signs it ad hoc. macOS grants a status item only to a signed bundle with LSUIElement set. Run the script with no argument for a debug build. An ad-hoc signature is enough to run a build you made yourself, and not enough to travel: macOS refuses an ad-hoc bundle that arrived over the internet. Scripts/release.sh is what produces the download above, signing with a Developer ID certificate and stapling Apple's notarization ticket to the .dmg. Source layout Path What lives there Sources/AirStatKit Collectors, the sampling engine, settings, formatting. No UI. Sources/AirStatUI Menu bar drawing, panel, overlay, settings window, charts, design system. Sources/AirStats The executable, app delegate, and the probe and render commands. Tests/AirStatKitTests Contract tests for the collectors, plus settings and formatting. Scripts/build.sh Builds the binary and assembles the .app. Scripts/release.sh Signs, notarizes and packages the .dmg that ships. Scripts/appcast.py Writes a release into the appcast Sparkle reads. Scripts/benchmark.py Samples the menu bar monitors on your Mac over one shared window. AirStatKit never imports SwiftUI or AppKit, which is what lets the tests and the probe run in a windowless process. Contributing CONTRIBUTING.md has the checks to run before a pull request and the house rules. License MIT. See LICENSE. Topics Resources Readme MIT license Contributing Contributing Activity Stars 3 stars Watchers 0 watching Forks 0 forks Report repository