A low-fat task runner.
Project description
Skyr
Low-fat task runner.
Skyr is a task runner, similar to Make. Just like Make, it can have tasks that depend on each other and are executed only if a file changes. But, unlike Make, Skyr doesn't actually have to be installed on your machine to run. That's because Skyr uses Shell scripts to define build commands and looks for special comments for special features. This means you can very easily integrate Skyr into your existing project.
Install
Using pipx
(recommended)
pipx install skyr
Using plain pip
pip install --user skyr
Drop-in executable
wget "https://raw.githubusercontent.com/kytta/skyr/main/skyr.py"
Usage
For example, to execute script/test
:
skyr test
If you don't provide the script name, it will default to build
:
skyr # same as 'skyr build'
By default, Skyr searches for your scripts inside ./.skyr/
and ./script
. To
change that, use --script-dir
:
skyr --script-dir ./dev/ test
Roadmap
- Basic script running: Run .sh, .bash, .zsh, and other files from the
script/
directory. - Target dependencies: Run scripts if other depend on them.
- Dependency age: Run scripts only if the files it depends on changed.
- Script validation: Check that Skyr understands the scripts it was given.
- Make mode: Support running very basic Makefiles.
- Make migration mode: Support migrating from a Makefile to a
script/
directory. - Just mode: Support running very basic Justfiles.
- Just migration mode: Support migrating from
just
to ascript/
directory.
Licence
© 2023 Nikita Karamov
Code licensed under the ISC License.
This project is hosted on GitHub: https://github.com/kytta/skyr.git
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file skyr-0.3.1.tar.gz
.
File metadata
- Download URL: skyr-0.3.1.tar.gz
- Upload date:
- Size: 14.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.6
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | e371b29842ac98deb25836efa21ae3a05dc2e531bb40e39a2916267a0ea8f2bf |
|
MD5 | 6a580f366ee2c12e5a21a229a3f5476f |
|
BLAKE2b-256 | 5d699941a8be36c27c7a8161076ca7355578ee4b9ef7758b2ad00c9c0813366c |
File details
Details for the file skyr-0.3.1-py3-none-any.whl
.
File metadata
- Download URL: skyr-0.3.1-py3-none-any.whl
- Upload date:
- Size: 4.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.6
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9f7b1d0a133f27d09feac66bec4304e101d80d1f85b700dd718ac8e15c5eac2c |
|
MD5 | 599580a4eff75ed9a2218e04ff92f36c |
|
BLAKE2b-256 | 1455722961e475a9115d4f3872ea7836a000e73f9f5b50fae5f1cbb5075adc7a |