diff options
author | William Carroll <wpcarro@gmail.com> | 2020-08-12T09·28+0100 |
---|---|---|
committer | William Carroll <wpcarro@gmail.com> | 2020-08-12T09·28+0100 |
commit | 3d6130c7cfb31d3a5eb5510d3aec55000b7df230 (patch) | |
tree | a4d1a9aa154e4afae493d7b7636aea8033b84f91 /scratch/brilliant/default.nix | |
parent | 17e1764ef8cfa7ebf6b8f1c6b4d4f6edd335e10d (diff) |
Provide more useful instructions for building this project
TL;DR: - include a default.nix to allow users to build an named executable - emphasize in the README that the user needs Nix to build this project - pin nixpkgs to a specific commit and fetch it from GitHub
Diffstat (limited to 'scratch/brilliant/default.nix')
-rw-r--r-- | scratch/brilliant/default.nix | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/scratch/brilliant/default.nix b/scratch/brilliant/default.nix new file mode 100644 index 000000000000..83c62a3d2eba --- /dev/null +++ b/scratch/brilliant/default.nix @@ -0,0 +1,25 @@ +let + pkgs = import (builtins.fetchGit { + url = "https://github.com/NixOS/nixpkgs-channels"; + ref = "nixos-20.03"; + rev = "afa9ca61924f05aacfe495a7ad0fd84709d236cc"; + }) {}; + + ghc = pkgs.haskellPackages.ghcWithPackages (hpkgs: [ + hpkgs.optparse-applicative + hpkgs.unordered-containers + ]); +in pkgs.stdenv.mkDerivation { + name = "transform-keyboard"; + buildInputs = []; + src = builtins.path { + path = ./.; + name = "transform-keyboard-src"; + }; + buildPhase = '' + ${ghc}/bin/ghc ./Main.hs + ''; + installPhase = '' + mkdir -p $out && mv Main $out/transform-keyboard + ''; +} |