Skip to content

TheFox/cmus-control

Repository files navigation

Cmus Control

Control cmus with Media Keys ⏪ ▶️ ⏩ under macOS.

Project Outlines

The project outlines as described in my blog post about Open Source Software Collaboration.

  • The main purpose of this software is to provide support for cmus under macOS. Cmus can be controlled by the Media Keys of your Apple Keyboard.
  • The feature set is restricted because this software already provides the intended features. But still, feel free to request features.

Requirements

  • At least macOS 10.8.
  • zig to build it.
  • Since Cmus Control doesn't have the behavior of changing any foreign processes it's highly recommended to deactivate the Remote Control Daemon.
  • cmus installed. ;)

Install

You can either install Cmus Control via Homebrew or manually. The preferred method of installation is via Homebrew.

Homebrew installation

  1. Add the thefox/brewery tap to brew.

    brew tap thefox/brewery
  2. Actual installation

    brew install cmus-control
  3. After a successful installation follow the Caveats output, start the service:

    brew services start thefox/brewery/cmus-control

    Or, if you don't want/need a background service you can just run

    cmuscontrold

Manual installation

  1. You need to install zig: brew install zig
  2. Run ./bin/install.sh to compile Cmus Control Daemon and install cmuscontrold under /usr/local/bin path. A launchd.plist file named at.fox21.cmuscontrold.plist will be created under $HOME/Library/LaunchAgents to start Cmus Control Daemon automatically on login.

Uninstall

Just run ./bin/uninstall.sh. Doing so

  • cmuscontrold will be unloaded via launchctl;
  • $HOME/Library/LaunchAgents/at.fox21.cmuscontrold.plist will be removed;
  • /usr/local/bin/cmuscontrold will be removed.

Load/Unload

After a successful manual installation the cmuscontrold is loaded/started automatically with launchctl. You can unload the daemon manually:

launchctl unload "$HOME/Library/LaunchAgents/at.fox21.cmuscontrold.plist"

Or load it manually:

launchctl load "$HOME/Library/LaunchAgents/at.fox21.cmuscontrold.plist"