diff options
author | sterni <sternenseemann@systemli.org> | 2022-01-19T12·59+0100 |
---|---|---|
committer | clbot <clbot@tvl.fyi> | 2023-05-14T14·42+0000 |
commit | c1484c9f85f5f9735dabc69072eb4bd26f6ddd45 (patch) | |
tree | 180f3754dea555d843b0b73340c53cf9cdb7e6cd /third_party/lisp/qbase64/default.nix | |
parent | 9cf42c25c3907d2cc8030c5a8e1a82aa7449ca70 (diff) |
feat(3p/lisp): add qbase64 r/6137
Change-Id: I448b9241726c3bb08f14188775a66e1da1225e02 Reviewed-on: https://cl.tvl.fyi/c/depot/+/5004 Tested-by: BuildkiteCI Autosubmit: sterni <sternenseemann@systemli.org> Reviewed-by: sterni <sternenseemann@systemli.org>
Diffstat (limited to 'third_party/lisp/qbase64/default.nix')
-rw-r--r-- | third_party/lisp/qbase64/default.nix | 57 |
1 files changed, 57 insertions, 0 deletions
diff --git a/third_party/lisp/qbase64/default.nix b/third_party/lisp/qbase64/default.nix new file mode 100644 index 000000000000..40a93e04f062 --- /dev/null +++ b/third_party/lisp/qbase64/default.nix @@ -0,0 +1,57 @@ +{ depot, pkgs, ... }: + +let + src = pkgs.applyPatches { + src = pkgs.fetchFromGitHub { + owner = "chaitanyagupta"; + repo = "qbase64"; + rev = "4ac193ed6b35a867ca453ed74acc128c9a077407"; + sha256 = "06daqqfdd51wkx0pyxgz7zq4ibzsqsgn3qs04jabx67gyybgnmjm"; + }; + + patches = [ + # qbase64 expects macOS base64 + ./coreutils-base64.patch + ]; + }; + + getSrcs = builtins.map (p: "${src}/${p}"); + +in + +depot.nix.buildLisp.library { + name = "qbase64"; + + srcs = getSrcs [ + "package.lisp" + "utils.lisp" + "stream-utils.lisp" + "qbase64.lisp" + ]; + + deps = [ + depot.third_party.lisp.trivial-gray-streams + depot.third_party.lisp.metabang-bind + ]; + + tests = { + name = "qbase64-tests"; + + srcs = getSrcs [ + "qbase64-test.lisp" + ]; + + deps = [ + { + sbcl = depot.nix.buildLisp.bundled "uiop"; + default = depot.nix.buildLisp.bundled "asdf"; + } + depot.third_party.lisp.fiveam + depot.third_party.lisp.cl-fad + ]; + + expression = '' + (fiveam:run! '(qbase64-test::encoder 'qbase64-test::decoder)) + ''; + }; +} |