Troubleshooting
Fixes for common MacPeek problems: a utility is missing, a port is missing, Kill does nothing, Launch at login fails, or macOS blocks the app.
A utility is missing from the launcher
Open Settings → Manage utilities (or the Manage utilities link in the launcher footer) and check its switch. Utilities marked Coming soon are not released yet and cannot be switched on.
A port I expect is missing
- It may belong to another user or root. Check with
sudo lsof -nP -iTCP -sTCP:LISTEN. - Only listening sockets are shown, not outgoing connections.
- Press ⟳ to refresh; the list updates every 2 seconds while open.
Kill says “Permission denied”
The process isn’t yours. See permissions.
Kill says “did not exit”
The process ignored SIGTERM (it may be hung or cleaning up). Wait a moment and refresh, or use Force Kill, which ends it immediately without cleanup.
“Target changed” or “Port already released”
That’s PortPeek protecting you: the port changed owner between scan and kill, so nothing was killed. Refresh and retry.
Port 5000 or 7000 is used by “ControlCenter”
That’s macOS AirPlay Receiver. Turn it off in System Settings → General → AirDrop & Handoff → AirPlay Receiver.
Paste does not work in a text field
Update to the latest MacPeek. Earlier builds had no Edit menu, so ⌘V, ⌘C, ⌘A and ⌘Z did not reach text fields. They work in every field now.
The Light theme does not apply
Choose it in Settings → Appearance; it applies to the popover straight away. If it does not, open an issue with your macOS version.
USBPeek does not show a device I just plugged in
USBPeek updates every few seconds while its screen is open. Press ⌘R to read immediately. Serial numbers are never shown, so two identical devices differ only by where they are connected.
DiskPeek shows no rates yet
Rates need two samples, so they appear a moment after you open the screen. Other users’ and protected processes cannot be read, so they are not shown.
EnvPeek says it cannot read a process
macOS lets MacPeek read the environment only of your own processes, and hides it for protected system programs. EnvPeek reports that as a failure rather than showing an empty list. Terminal-launched programs often differ from MacPeek’s own environment, which is why This app and A process are labelled separately.
SleepPeek’s history takes a long time
Load history reads macOS’s power log, which can take up to a minute. It runs only when you press it and stops if you leave the screen.
NetPeek shows the Wi-Fi name as hidden
That is macOS. It withholds the network name from apps without Location access, and MacPeek does not ask for it. Signal, channel and rate still show.
A ping to a DNS server was skipped
NetPeek pings IPv4 servers only, up to three. IPv6 servers are listed as skipped. No reply to a ping is not proof of an outage: some devices ignore pings.
DNSPeek says a server timed out
The server did not answer within two seconds on that try. If only one server times out while the others answer, that is the one to fix or remove in System Settings → Network → Details → DNS.
SoundPeek shows “Not reported” for volume or mute
Some devices, such as many HDMI and USB audio devices, do not expose volume or mute to macOS, so SoundPeek cannot show or change them and shows no slider or button for them. Only the default output device has a slider and mute button in any case: press Set as default output on another device first. Changes made from the menu bar or keyboard appear on the next device change or when you press ⌘R.
The SoundPeek slider jumps back
SoundPeek sends the volume a moment after you stop dragging and keeps your value until the device confirms it. If the device refuses the change, you see a message and the slider returns to the device’s real volume. Some devices apply volume in coarse steps.
UpdatePeek says Homebrew or npm was not found, or could not be understood
UpdatePeek looks for Homebrew at /opt/homebrew/bin/brew and /usr/local/bin/brew, and for npm at /opt/homebrew/bin/npm and /usr/local/bin/npm. npm installed with nvm, fnm or Volta lives elsewhere and is not detected. If the tool is elsewhere, or fails, you see a plain message and can press Check again. UpdatePeek never runs brew update, so the Homebrew list reflects what Homebrew last fetched.
UpdatePeek’s npm check or Check now fails
Both ask a server (the npm registry, or Apple’s update servers), so they need a network connection. When they cannot reach it you see a failure message with a retry, never an empty list and never “no new software”. Try again when you are online.
UpdatePeek says macOS is “Not checked”
macOS has no update listed in its own record and you have not pressed Check now. That is not a statement that nothing is available. Press Check now to ask Apple’s update servers, or open Software Update.
The npm Update button says npm isn’t allowed to change its packages
npm cannot change its global packages with your user account. This is common when Node was installed with the nodejs.org installer, which installs under /usr/local. UpdatePeek never uses administrator rights and never asks for a password. Instead, the package’s row shows the same command with sudo in front and a copy button: paste it into Terminal, which asks for your password. Use it only for packages you trust, because their install scripts then run as administrator. To avoid needing sudo, move to a Node install your user owns, such as Homebrew’s, or give npm a global folder in your home directory.
Launch at login doesn’t stick
Run MacPeek from /Applications, then toggle it in settings. You can also manage it in System Settings → General → Login Items.
macOS blocks the app
Download only from the official download page and verify the checksum.
Still stuck? Open an issue.