diff --git a/pkgs/tools/misc/gradescope-submit/default.nix b/pkgs/tools/misc/gradescope-submit/default.nix new file mode 100644 index 000000000000..89e7dc89438c --- /dev/null +++ b/pkgs/tools/misc/gradescope-submit/default.nix @@ -0,0 +1,35 @@ +{ lib +, fetchFromGitHub +, ocamlPackages +}: + +ocamlPackages.buildDunePackage rec { + pname = "gradescope_submit"; + version = "2.0.2"; + + src = fetchFromGitHub { + owner = "nmittu"; + repo = "gradescope-submit"; + rev = version; + hash = "sha256-BVNXipgw0wz3PRGYvur8jrXZw/6i0fZ+MOZHzXzlFOk="; + }; + + buildInputs = with ocamlPackages; [ + core + core_unix + cohttp + cohttp-lwt-unix + lambdasoup + toml + yojson + lwt_ssl + ]; + + meta = with lib; { + description = "A small script to submit to Gradescope via GitHub"; + homepage = "https://github.com/nmittu/gradescope-submit"; + license = licenses.mit; + maintainers = with maintainers; [ figsoda ]; + mainProgram = "submit"; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 19957bf4aa50..12a14f855eb3 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -692,6 +692,8 @@ with pkgs; gpick = callPackage ../tools/misc/gpick { }; + gradescope-submit = callPackage ../tools/misc/gradescope-submit { }; + gridlock = callPackage ../tools/nix/gridlock { }; inherit (gridlock) nyarr;