Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 6 additions & 0 deletions maintainers/maintainer-list.nix
Original file line number Diff line number Diff line change
Expand Up @@ -1396,6 +1396,12 @@
githubId = 164148;
name = "Ben Darwin";
};
bdd = {
email = "bdd@mindcast.org";
github = "bdd";
githubId = 11135;
name = "Berk D. Demir";
};
bdesham = {
email = "benjamin@esham.io";
github = "bdesham";
Expand Down
52 changes: 52 additions & 0 deletions pkgs/tools/system/runitor/default.nix
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
{ lib, buildGoModule, fetchFromGitHub, testers, runitor }:

buildGoModule rec {
pname = "runitor";
version = "0.9.2";
vendorSha256 = null;

src = fetchFromGitHub {
owner = "bdd";
repo = "runitor";
rev = "v${version}";
sha256 = "sha256-LuCxn4j0MlnJjSh3d18YNzNrtbqtMPxgkZttqKUGJd4";
};

ldflags = [
"-s" "-w" "-X main.Version=v${version}"
];

# TODO(cole-h):
# End-to-end tests requiring localhost networking currently under
# OfBorg's Linux builders, while passing under Darwin.
#
# Ref: https://github.com/NixOS/nixpkgs/pull/170566#issuecomment-1114034891
#
# Temporarily disable tests.
doCheck = false;

passthru.tests.version = testers.testVersion {
package = runitor;
command = "runitor -version";
version = "v${version}";
};

# Unit tests require binding to local addresses for listening sockets.
__darwinAllowLocalNetworking = true;

meta = with lib; {
homepage = "https://bdd.fi/x/runitor";
description = "A command runner with healthchecks.io integration";
longDescription = ''
Runitor runs the supplied command, captures its output, and based on its exit
code reports successful or failed execution to https://healthchecks.io or your
private instance.

Healthchecks.io is a web service for monitoring periodic tasks. It's like a
dead man's switch for your cron jobs. You get alerted if they don't run on time
or terminate with a failure.
'';
license = licenses.bsd0;
maintainers = with maintainers; [ bdd ];
};
}
2 changes: 2 additions & 0 deletions pkgs/top-level/all-packages.nix
Original file line number Diff line number Diff line change
Expand Up @@ -34431,6 +34431,8 @@ with pkgs;

runit = callPackage ../tools/system/runit { };

runitor = callPackage ../tools/system/runitor { };

refind = callPackage ../tools/bootloaders/refind { };

spectrojack = callPackage ../applications/audio/spectrojack { };
Expand Down