From 40b12aec80fce2c7b6a1e7733bff749e2940f99b Mon Sep 17 00:00:00 2001 From: Robert James Hernandez Date: Mon, 4 Mar 2024 15:57:57 +0000 Subject: scion: init at 0.10.0 --- pkgs/by-name/sc/scion/package.nix | 53 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 53 insertions(+) create mode 100644 pkgs/by-name/sc/scion/package.nix diff --git a/pkgs/by-name/sc/scion/package.nix b/pkgs/by-name/sc/scion/package.nix new file mode 100644 index 0000000000000..52aae8f5cf625 --- /dev/null +++ b/pkgs/by-name/sc/scion/package.nix @@ -0,0 +1,53 @@ +{ lib +, buildGoModule +, fetchFromGitHub +}: +let + version = "0.10.0"; + + # Injects a `t.Skip()` into a given test since there's apparently no other way to skip tests here. + # ref: https://github.com/NixOS/nixpkgs/blob/047bc33866bf7004d0ce9ed0af78dab5ceddaab0/pkgs/by-name/vi/vikunja/package.nix#L96 + skipTest = lineOffset: testCase: file: + let + jumpAndAppend = lib.concatStringsSep ";" (lib.replicate (lineOffset - 1) "n" ++ [ "a" ]); + in + '' + sed -i -e '/${testCase}/{ + ${jumpAndAppend} t.Skip(); + }' ${file} + ''; +in + +buildGoModule { + pname = "scion"; + + inherit version; + + src = fetchFromGitHub { + owner = "scionproto"; + repo = "scion"; + rev = "v${version}"; + hash = "sha256-8yXjEDo1k0+7O0gx2acAZMrG/r+iePfNCG+FolCSKwI="; + }; + + vendorHash = "sha256-4nTp6vOyS7qDn8HmNO0NGCNU7wCb8ww8a15Yv3MPEq8="; + + excludedPackages = [ "acceptance" "demo" "tools" "pkg/private/xtest/graphupdater" ]; + + # This can be removed in the next release of scion since its fixed upstream + # https://github.com/scionproto/scion/pull/4476 + postConfigure = '' + # This test needs docker, so lets skip it + ${skipTest 1 "TestOpensslCompatible" "scion-pki/trcs/sign_test.go"} + ''; + + doCheck = true; + + meta = with lib; { + description = "A future Internet architecture utilizing path-aware networking"; + homepage = "https://scion-architecture.net/"; + platforms = platforms.unix; + license = licenses.asl20; + maintainers = with maintainers; [ sarcasticadmin ]; + }; +} -- cgit 1.4.1