Skip to content

Commit

Permalink
Transform .travis.yml to JSON and build Nix from it
Browse files Browse the repository at this point in the history
  • Loading branch information
Manuel Bärenz committed May 23, 2020
1 parent 86f226d commit 402795d
Show file tree
Hide file tree
Showing 2 changed files with 37 additions and 22 deletions.
51 changes: 29 additions & 22 deletions .travis.yml
Original file line number Diff line number Diff line change
@@ -1,23 +1,30 @@
language: haskell
ghc:
- '8.8'
- '8.6'
- '8.4.3'
- '8.2.2'
- '8.0.2'
before_install:
- sudo apt-get update -qq
- sudo apt-get install -qq libgl1-mesa-dev libglu1-mesa-dev freeglut3-dev
script: cabal new-build all
install: skip
{
"language": "haskell",
"ghc":
[ "8.8.3"
, "8.6.5"
, "8.4.3"
, "8.2.2"
, "8.0.2"
],
"before_install":
[ "sudo apt-get update -qq"
, "sudo apt-get install -qq libgl1-mesa-dev libglu1-mesa-dev freeglut3-dev"
],
"script": "cabal new-build all",
"install": "skip",

deploy:
provider: hackage
username: turion
password:
secure: G/2ZSEAUdlyUj5EGZheKO/AxS1fUm7biFzK21wysDWR4KJ5vJEyvywJp3ML4F3dS1cfHdn7YTrtUvRg9jpNjaDcqf3UEs0z4EK/jj2kDi/EbkScrw9Q1A5Wpy2Rmohv+oajauJPw9tglYnaOzQgFOiWqlaeX2x7Zlmlf5LLlmTzffTsFYwmKFYbUiiIaiYDrDs21oYMezYnKj4y+JdNLCMJC3Nz0Q8J6JEgdMnvRLj/d94+m6P7dPn3AOqTnjeKetXOTYw+APc80pIS4gL2NC/tje1jp3W5vdZVouqc3I5vXKokjRM+/j4blwRiMik3JNDk6sfo/uVC1hvEg6ZHCpG12vZu8mUNu0OHixmoXUi4+dxvYJuNegCKFKczgPe9X37gK3TwglEXSkqUDT89yk1INN4ELZN2hEQvzdnGNn/xWlt3t+XxoAzzQLuvW+zCLqosviZ1bmplXZolsoSvXtqPBVAqC1lJVBhNooHETk/k+8MoiBXNKJ/PZboDWbtLvvZ3HpJF24iNKIMKZ1QzY6pR0FymHTDebJc9p+9RCGsLdt2jRDkzzYmmRxytnF4TYb0dMJDtmQ4xqv8cPHYO6WsJdNw3GvkfwGFmgWcw1mZlx6Y5a47nYkTdDmqmZ/jyhKySqVUMOTaEZxm6BUd3xlP94ZxBDc8f7p05LNIh+4JM=
on:
repo: turion/rhine
tags: true
condition:
- $TRAVIS_HASKELL_VERSION = 8.2.2
"deploy":
{ "provider": "hackage"
, "username": "turion"
, "password":
{ "secure": "G/2ZSEAUdlyUj5EGZheKO/AxS1fUm7biFzK21wysDWR4KJ5vJEyvywJp3ML4F3dS1cfHdn7YTrtUvRg9jpNjaDcqf3UEs0z4EK/jj2kDi/EbkScrw9Q1A5Wpy2Rmohv+oajauJPw9tglYnaOzQgFOiWqlaeX2x7Zlmlf5LLlmTzffTsFYwmKFYbUiiIaiYDrDs21oYMezYnKj4y+JdNLCMJC3Nz0Q8J6JEgdMnvRLj/d94+m6P7dPn3AOqTnjeKetXOTYw+APc80pIS4gL2NC/tje1jp3W5vdZVouqc3I5vXKokjRM+/j4blwRiMik3JNDk6sfo/uVC1hvEg6ZHCpG12vZu8mUNu0OHixmoXUi4+dxvYJuNegCKFKczgPe9X37gK3TwglEXSkqUDT89yk1INN4ELZN2hEQvzdnGNn/xWlt3t+XxoAzzQLuvW+zCLqosviZ1bmplXZolsoSvXtqPBVAqC1lJVBhNooHETk/k+8MoiBXNKJ/PZboDWbtLvvZ3HpJF24iNKIMKZ1QzY6pR0FymHTDebJc9p+9RCGsLdt2jRDkzzYmmRxytnF4TYb0dMJDtmQ4xqv8cPHYO6WsJdNw3GvkfwGFmgWcw1mZlx6Y5a47nYkTdDmqmZ/jyhKySqVUMOTaEZxm6BUd3xlP94ZxBDc8f7p05LNIh+4JM="}
, "on":
{ "repo": "turion/rhine"
, "tags": "true"
, "condition":
[ "$TRAVIS_HASKELL_VERSION = 8.2.2"
]
}
}
}
8 changes: 8 additions & 0 deletions nix/all-ghcs.nix
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
{ nixpkgs ? import <nixpkgs> {} }:

let
travisJobGHCEnvs = (builtins.fromJSON (builtins.readFile ../.travis.yml)).ghc;
getGHCVersionFromEnv = env: builtins.concatStringsSep "" ["ghc" (builtins.replaceStrings ["."] [""] env)];
supportedGHCVersions = builtins.map getGHCVersionFromEnv travisJobGHCEnvs;
buildRhineWith = version: import ../default.nix { compiler = version; };
in builtins.map buildRhineWith supportedGHCVersions

0 comments on commit 402795d

Please sign in to comment.