Code Monkey home page Code Monkey logo

am's Introduction

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 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 now

am next

am next

am discord

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...

License

GPLv3

am's People

Contributors

dependabot[bot] avatar ryanccn avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

am's Issues

Request for `am` crate name

Hey @ajaxm, I’d really like to publish this project with the name as-is on crates.io as am! I see that you already own that crate, but it doesn’t contain any code and hasn’t been updated in four years, so I was wondering if you could be so kind as to transfer the crate’s ownership to me or delete the original crate. Thanks :)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.