diff --git a/.travis.yml b/.travis.yml new file mode 100644 index 0000000..81a7120 --- /dev/null +++ b/.travis.yml @@ -0,0 +1,35 @@ +language: minimal + +# broken: +# - PKG=electrs STABLE=0 + +# Retry installing nix due to nondeterministic error +# Fatal error: glibc detected an invalid stdio handle +# see: +# https://github.com/nh2/static-haskell-nix/pull/27#issuecomment-502652181 +# https://github.com/nixos/nix/issues/2733 +install: | + (for i in {1..5}; do bash <(curl https://nixos.org/nix/install) && exit 0; done; exit 1) + . /home/travis/.nix-profile/etc/profile.d/nix.sh + nix-env -iA cachix -f https://cachix.org/api/v1/install + cachix use nix-bitcoin + [ $STABLE -eq 1 ] && export NIX_PATH="nixpkgs=$(nix eval --raw -f pkgs/nixpkgs-pinned.nix nixpkgs)" + [ $STABLE -eq 0 ] && export NIX_PATH="nixpkgs=$(nix eval --raw -f pkgs/nixpkgs-pinned.nix nixpkgs-unstable)" + VER="$(nix eval nixpkgs.lib.version)" +env: + matrix: + - PKG=nodeinfo STABLE=1 + - PKG=hwi STABLE=1 + - PKG=hwi STABLE=0 + - PKG=lightning-charge STABLE=1 + - PKG=lightning-charge STABLE=0 + - PKG=nanopos STABLE=1 + - PKG=nanopos STABLE=0 + - PKG=spark-wallet STABLE=1 + - PKG=spark-wallet STABLE=0 + - PKG=elementsd STABLE=1 + - PKG=elementsd STABLE=0 + - PKG=electrs STABLE=1 +script: | + printf '%s (%s)\n' "$NIX_PATH" "$VER" + nix-build -A $PKG diff --git a/pkgs/nixpkgs-pinned.nix b/pkgs/nixpkgs-pinned.nix index 1ee64cd..bc10fd7 100644 --- a/pkgs/nixpkgs-pinned.nix +++ b/pkgs/nixpkgs-pinned.nix @@ -1,12 +1,7 @@ +let + fetch = rev: builtins.fetchTarball "https://github.com/nixos/nixpkgs-channels/archive/${rev}.tar.gz"; +in { - nixpkgs = builtins.fetchGit { - url = "https://github.com/nixos/nixpkgs-channels"; - ref = "nixos-19.03"; - rev = "e6ad5e75f3bfaab5e7b7f0f128bf13d534879e65"; - }; - nixpkgs-unstable = builtins.fetchGit { - url = "https://github.com/nixos/nixpkgs-channels"; - ref = "nixos-unstable"; - rev = "765a71f15025ce78024bae3dc4a92bd2be3a8fbf"; - }; + nixpkgs = fetch "e6ad5e75f3bfaab5e7b7f0f128bf13d534879e65"; + nixpkgs-unstable = fetch "765a71f15025ce78024bae3dc4a92bd2be3a8fbf"; }