2021-01-11 07:54:33 +00:00
|
|
|
{ lib, stdenv, fetchFromGitHub, bison, flex }:
|
2019-11-30 15:06:04 +00:00
|
|
|
|
|
|
|
stdenv.mkDerivation rec {
|
|
|
|
pname = "boxes";
|
|
|
|
version = "1.3";
|
|
|
|
|
|
|
|
src = fetchFromGitHub {
|
|
|
|
owner = "ascii-boxes";
|
|
|
|
repo = "boxes";
|
|
|
|
rev = "v${version}";
|
|
|
|
sha256 = "0b12rsynrmkldlwcb62drk33kk0aqwbj10mq5y5x3hjf626gjwsi";
|
|
|
|
};
|
|
|
|
|
|
|
|
# Building instructions:
|
|
|
|
# https://boxes.thomasjensen.com/build.html#building-on-linux--unix
|
|
|
|
nativeBuildInputs = [ bison flex ];
|
|
|
|
|
|
|
|
dontConfigure = true;
|
|
|
|
|
|
|
|
# Makefile references a system wide config file in '/usr/share'. Instead, we
|
|
|
|
# move it within the store by default.
|
|
|
|
preBuild = ''
|
|
|
|
substituteInPlace Makefile \
|
|
|
|
--replace "GLOBALCONF = /usr/share/boxes" \
|
|
|
|
"GLOBALCONF=${placeholder "out"}/share/boxes/boxes-config"
|
|
|
|
'';
|
|
|
|
|
2021-02-16 11:51:23 +00:00
|
|
|
makeFlags = [ "CC=${stdenv.cc.targetPrefix}cc" ];
|
2019-11-30 15:06:04 +00:00
|
|
|
|
|
|
|
installPhase = ''
|
|
|
|
install -Dm755 -t $out/bin src/boxes
|
|
|
|
install -Dm644 -t $out/share/boxes boxes-config
|
|
|
|
install -Dm644 -t $out/share/man/man1 doc/boxes.1
|
|
|
|
'';
|
|
|
|
|
2021-01-11 07:54:33 +00:00
|
|
|
meta = with lib; {
|
2024-01-08 05:29:45 +00:00
|
|
|
description = "A command line program which draws, removes, and repairs ASCII art boxes";
|
2020-04-01 01:11:51 +00:00
|
|
|
homepage = "https://boxes.thomasjensen.com";
|
2019-11-30 15:06:04 +00:00
|
|
|
license = licenses.gpl2;
|
|
|
|
maintainers = with maintainers; [ waiting-for-dev ];
|
|
|
|
platforms = platforms.unix;
|
|
|
|
};
|
|
|
|
}
|