matchbox-server: init at v0.11.0

Add a Nix `matchbox-server` package for the matchbox project
https://github.com/poseidon/matchbox. It provides a server for
PXE booting and provisioning machines into clusters and has been
maintained for many years

Note: A matchbox-window-manager is already using the Nix package name
matchbox, so name this new package matchbox-server
This commit is contained in:
Dalton Hubble 2024-03-24 00:26:47 -07:00
parent dacf3de5aa
commit 03344be986
1 changed files with 43 additions and 0 deletions

View File

@ -0,0 +1,43 @@
{ lib
, buildGoModule
, fetchFromGitHub
}:
buildGoModule rec {
pname = "matchbox-server";
version = "v0.11.0";
src = fetchFromGitHub {
owner = "poseidon";
repo = "matchbox";
rev = "${version}";
hash = "sha256-u1VY+zEx2YToz+WxVFaUDzY7HM9OeokbR/FmzcR3UJ8=";
};
vendorHash = "sha256-sVC4xeQIcqAbKU4MOAtNicHcioYjdsleQwKWLstnjfk=";
subPackages = [
"cmd/matchbox"
];
# Go linker flags (go tool link)
# Omit symbol tables and debug info
ldflags = [
"-w -s -X github.com/poseidon/matchbox/matchbox/version.Version=${version}"
];
# Disable cgo to produce a static binary
CGO_ENABLED = 0;
# Don't run Go tests
doCheck = false;
meta = with lib; {
description = "Server to network boot and provision Fedora CoreOS and Flatcar Linux clusters";
homepage = "https://matchbox.psdn.io/";
changelog = "https://github.com/poseidon/matchbox/blob/main/CHANGES.md";
license = licenses.asl20;
maintainers = with maintainers; [ dghubble ];
mainProgram = "matchbox";
};
}