Skip to content
Snippets Groups Projects
Unverified Commit 56f9e8f0 authored by Jean-Paul Calderone's avatar Jean-Paul Calderone Committed by GitHub
Browse files

Merge pull request #106 from PrivateStorageio/update-libchallenge_bypass_ristretto_ffi

Update to a libchallenge_bypass_ristretto_ffi with correct pkg-config
parents 8304f8a8 9232d319
Branches
No related tags found
No related merge requests found
...@@ -24,46 +24,16 @@ jobs: ...@@ -24,46 +24,16 @@ jobs:
resource_class: "xlarge" resource_class: "xlarge"
environment:
# Specify a revision of NixOS/nixpkgs to run against. This essentially
# pins the majority of the software involved in the build. This
# revision is selected arbitrarily. It's somewhat current as of the
# time of this comment. We can bump it to a newer version when that
# makes sense. Meanwhile, the platform won't shift around beneath us
# unexpectedly.
NIXPKGS_REV: "92609f3d9bc3acffbdbe54fa1c591a885612aa73"
steps: steps:
- run: - run:
name: "Setup Environment Variables" name: "Setup Environment Variables"
command: | command: |
# Get NIX_PATH set for the rest of the job so that the revision of
# nixpkgs we selected will be used everywhere Nix pulls in software.
# There is no way to set an environment variable containing the
# value of another environment variable on CircleCI except to use
# the `BASH_ENV` feature as we do here.
echo "export NIX_PATH=nixpkgs=https://github.com/NixOS/nixpkgs/archive/$NIXPKGS_REV.tar.gz" >> $BASH_ENV
# Set XDG_CONFIG_DIRS to point at the source directory, so that nix # Set XDG_CONFIG_DIRS to point at the source directory, so that nix
# will pickup nix/nix.conf as a configuration file from there. # will pickup nix/nix.conf as a configuration file from there.
echo "export XDG_CONFIG_DIRS=$CIRCLE_WORKING_DIRECTORY" >> $BASH_ENV echo "export XDG_CONFIG_DIRS=$CIRCLE_WORKING_DIRECTORY" >> $BASH_ENV
# Get *our* source code. # Get *our* source code.
- "checkout" - "checkout"
- "run":
# CircleCI won't let us interpolate NIXPKGS_REV into a cache key.
# Only CircleCI's own environment variables or variables set via the
# web interface in a "context" can be interpolated into cache keys.
# However, we can interpolate the checksum of a file... Since we
# don't care about the exact revision, we just care that a new
# revision gives us a new string, we can write the revision to a
# file and then put the checksum of that file into the cache key.
# This way, we don't have to maintain the nixpkgs revision in two
# places and risk having them desynchronize.
name: "Prepare For Cache Key"
command: |
echo "${NIXPKGS_REV}" > nixpkgs.rev
- restore_cache: - restore_cache:
# Get all of Nix's state relating to the particular revision of # Get all of Nix's state relating to the particular revision of
# nixpkgs we're using. It will always be the same. CircleCI # nixpkgs we're using. It will always be the same. CircleCI
...@@ -87,9 +57,8 @@ jobs: ...@@ -87,9 +57,8 @@ jobs:
# If nixpkgs changes then potentially a lot of cached packages for # If nixpkgs changes then potentially a lot of cached packages for
# the base system will be invalidated so we may as well drop them # the base system will be invalidated so we may as well drop them
# and make a new cache with the new packages. # and make a new cache with the new packages.
- paymentserver-nix-store-v5-{{ checksum "nixpkgs.rev" }}-{{ checksum "nix/challenge-bypass-ristretto-repo.nix" }} - paymentserver-nix-store-v6-{{ checksum "nix/sources.json" }}
- paymentserver-nix-store-v5-{{ checksum "nixpkgs.rev" }}- - paymentserver-nix-store-v6-
- paymentserver-nix-store-v5-
- run: - run:
name: "Building with Nix" name: "Building with Nix"
...@@ -114,7 +83,7 @@ jobs: ...@@ -114,7 +83,7 @@ jobs:
- save_cache: - save_cache:
name: "Cache Nix Store Paths" name: "Cache Nix Store Paths"
key: paymentserver-nix-store-v5-{{ checksum "nixpkgs.rev" }}-{{ checksum "nix/challenge-bypass-ristretto-repo.nix" }} key: paymentserver-nix-store-v6-{{ checksum "nix/sources.json" }}
paths: paths:
- "/nix" - "/nix"
......
let
pkgs = import <nixpkgs> {};
in
pkgs.fetchFromGitHub {
owner = "LeastAuthority";
repo = "python-challenge-bypass-ristretto";
rev = "v2021.07.12";
sha256 = "16af1qmx7srhvcc936x7hl2bz50hafm39311dbzqam9ms1i5q89j";
}
# Provide the ffi bindings to the Rust challenge-bypass-ristretto library. # Provide the ffi bindings to the Rust challenge-bypass-ristretto library.
{ fetchFromGitHub, callPackage }:
let let
src = import ./challenge-bypass-ristretto-repo.nix; sources = import ./sources.nix;
in in
import "${src}/default-challenge-bypass-ristretto-ffi.nix" { } { callPackage
, libchallenge_bypass_ristretto_ffi_repo ? sources.libchallenge_bypass_ristretto_ffi
}:
callPackage "${libchallenge_bypass_ristretto_ffi_repo}/challenge-bypass-ristretto.nix" { }
...@@ -11,6 +11,18 @@ ...@@ -11,6 +11,18 @@
"url": "https://github.com/input-output-hk/haskell.nix/archive/f624ca56629d5be438c7d44a721b0c1d944eda23.tar.gz", "url": "https://github.com/input-output-hk/haskell.nix/archive/f624ca56629d5be438c7d44a721b0c1d944eda23.tar.gz",
"url_template": "https://github.com/<owner>/<repo>/archive/<rev>.tar.gz" "url_template": "https://github.com/<owner>/<repo>/archive/<rev>.tar.gz"
}, },
"libchallenge_bypass_ristretto_ffi": {
"branch": "master",
"description": "Python bindings for Brave's challenge-bypass-ristretto library",
"homepage": null,
"owner": "leastauthority",
"repo": "python-challenge-bypass-ristretto",
"rev": "6e25af8a721a9d8507745efad3d15dae75b78909",
"sha256": "0w5vpq9kqhdbbynbbky1ibx1im5582yacqnb9y2y3h114diywdyq",
"type": "tarball",
"url": "https://github.com/leastauthority/python-challenge-bypass-ristretto/archive/6e25af8a721a9d8507745efad3d15dae75b78909.tar.gz",
"url_template": "https://github.com/<owner>/<repo>/archive/<rev>.tar.gz"
},
"niv": { "niv": {
"branch": "master", "branch": "master",
"description": "Easy dependency management for Nix projects", "description": "Easy dependency management for Nix projects",
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment