Getting Started
Create your first xc file
[edit]
Download the binary from GitHub Releases and add to your $PATH
go install github.com/joerdav/xc/cmd/xc@latest
brew tap joerdav/xc
brew install xc
sudo port install xc
With tea
just type xc
.
$ xc --version
# ^^ or `tea xc` if there’s no magic
TODO
There is a nix flake that can be used:
nix develop github:joerdav/xc
Or to create your own xc.nix
, replace <version>
and add the correct sha256
and vendorSha256
for the version:
{ config, pkgs, fetchFromGitHub, ... }:
let
xc = pkgs.buildGoModule rec {
pname = "xc";
version = "<version>";
subPackages = ["cmd/xc"];
src = pkgs.fetchFromGitHub {
owner = "joerdav";
repo = "xc";
rev = version;
sha256 = "";
};
vendorSha256 = "";
};
in
{
environment.systemPackages = [ xc ];
}
scoop install xc
TODO
Run xc -version
to verify the installation.
If installed via go install
the version will be devel
.
Run xc -complete
to install auto completion.
Run xc -uncomplete
to uninstall auto completion.
Create a file named README.md:
## Tasks
### hello
Prints hello
```sh
echo hello
```
### world
Prints world
Requires: hello
```sh
echo world
```
Run xc
to list the tasks.
$ xc
hello Prints hello
world Prints world
Requires: hello
Run xc world
to run the world
task.
$ xc world
echo hello
hello
echo world
world
Add the following badge to your README.md
so that people know it’s xc compatible.
[![xc compatible](https://xcfile.dev/badge.svg)](https://xcfile.dev)
Now that you have a simple task working, RTFM to learn what else xc
is capable of.