9 releases
0.5.4 | Sep 12, 2024 |
---|---|
0.5.3 | Jul 4, 2024 |
0.5.2 | Feb 8, 2024 |
0.5.1 | Nov 17, 2023 |
0.0.0 |
|
#186 in Command line utilities
155KB
1.5K
SLoC
am
A beautiful and feature-packed Apple Music CLI!
Written in Rust.
Installation
Nix (recommended)
This GitHub repository contains a flake. Add github:ryanccn/am
to your flake inputs:
{
inputs = {
# ...other inputs
am = {
url = "github:ryanccn/am";
inputs.nixpkgs.follows = "nixpkgs";
}
}
}
Then, use the overlay from overlays.default
and add am
to your packages. Alternatively, you can use packages.{default,am}
directly.
Cargo
You can install am
through cargo
from crates.io.
$ cargo install am
Manual download
Download the aarch64
(Apple Silicon) or the x86_64
(Intel) version of the binary.
Dequarantine them with xattr -d com.apple.quarantine <path>
and make them executable with chmod +x <path>
.
Features
- Beautiful now playing display
- Playback controls (play, pause, toggle, resume, back, forward, next, previous)
- Discord rich presence
- Launch agent installation
- Shell completions
Screenshots
am now
am next
am discord
Discord presence launch agent
Through a macOS launch agent, the Discord rich presence can be made to run in the background as long as you are logged in.
Standard installation
You can install the Discord presence as a launch agent by running am discord install
. Note that this depends on the executable/symlink staying in the same place; if it moves to a different place, run the command again.
The am
process running in the launch agent will log to ~/Library/Logs/am-discord-rich-presence.log
.
You can uninstall the launch agent with am discord uninstall
.
Home Manager
This repository's flake also provides a Home Manager module at homeManagerModules.default
. This module exposes a service am-discord-rich-presence
that you can enable.
{
services.am-discord-rich-presence = {
enable = true;
# optional
# logFile = "${config.xdg.cacheHome}/am-discord-rich-presence.log";
}
}
Thanks to...
- Raycast's Apple Music extension for a helpful reference of Apple Music's AppleScript interface usage
- sardonicism-04/discord-rich-presence for the original Rust crate for connecting to Discord
- caarlos0/discord-applemusic-rich-presence for inspiring the Discord presence part of this CLI
- @ajaxm for ceding ownership of the
am
package on crates.io
License
GPLv3
Dependencies
~16–31MB
~509K SLoC