Supercharge your Alfred 🎩 workflows by building them in Rust 🦀!
This project contains a powerpack
crate which provides types for developing
script filter Alfred workflows in Rust. It also provides a command line tool to
initialize, build, and install workflows built using the powerpack
crate.
Firstly, install the command line tool.
sh
cargo install powerpack-cli
Now create a new project using a similar API as cargo new
or cargo init
.
sh
powerpack new myworkflow && cd myworkflow
This will create a new Rust project as well as a workflow/
directory
containing information about your Alfred workflow. The following will create
a release build of the workflow and copy it to the workflow/
directory.
sh
powerpack build --release
Now you can link it to Alfred. The following will symlink the workflow/
directory to the Alfred preferences folder.
sh
powerpack link
Now you can run the workflow from Alfred ✨!
To package a .alfredworkflow
file for release you can run the following.
sh
powerpack package
The release will be available at target/workflow/myworkflow.alfredworkflow
.
setup-crate
can be used to install powerpack
in a GitHub Actions
workflow. For example:
yaml
steps:
- uses: actions/checkout@v2
- uses: extractions/setup-crate@v1
with:
owner: rossmacarthur
name: powerpack
- run: powerpack package
# produces an artifact at `target/workflow/{name}.alfredworkflow`
The following projects are built using powerpack
.
Licensed under either of
at your option.