anubis/yeetfile.js
Xe Iaso bb4f49cfd9
yeetfile: build debian packages
Signed-off-by: Xe Iaso <me@xeiaso.net>
2025-03-28 14:33:57 -04:00

24 lines
951 B
JavaScript

go.install();
["amd64", "arm64"].forEach(goarch => {
[deb, rpm].forEach(method => method.build({
name: "anubis",
description: "Anubis weighs the souls of incoming HTTP requests and uses a sha256 proof-of-work challenge in order to protect upstream resources from scraper bots.",
homepage: "https://xeiaso.net/blog/2025/anubis",
license: "MIT",
goarch,
build: (out) => {
// install Anubis binary
go.build("-o", `${out}/usr/bin/anubis`, "./cmd/anubis");
// install systemd unit
yeet.run("mkdir", "-p", `${out}/usr/lib/systemd/system`);
yeet.run("cp", "run/anubis@.service", `${out}/usr/lib/systemd/system/anubis@.service`);
// install default config
yeet.run("mkdir", "-p", `${out}/etc/anubis`);
yeet.run("cp", "run/anubis.env.default", `${out}/etc/anubis/anubis-default.env`);
},
}));
});