diff options
| author | Ingolf Wagner <contact@ingolf-wagner.de> | 2018-06-12 22:51:40 +0200 | 
|---|---|---|
| committer | Ingolf Wagner <contact@ingolf-wagner.de> | 2018-06-12 22:58:49 +0200 | 
| commit | 61f94fe48974b18b9e2d3fc5c03cc844f8fc3b45 (patch) | |
| tree | 55fc8943e7fa20a304ea531f91e6fc5402d216d9 | |
| parent | c8d71ce6acbae124a7bc162323442979a1d6df06 (diff) | |
Add README.md
containing very simple introductions
| -rw-r--r-- | README.md | 49 | 
1 files changed, 49 insertions, 0 deletions
| diff --git a/README.md b/README.md new file mode 100644 index 0000000..9fa56d0 --- /dev/null +++ b/README.md @@ -0,0 +1,49 @@ +nix library extension, containing sophisticated script and code generator functions. + +# How to include as overlay + +``` +{ config, pkgs, ... }: +let + +  # fetch the repository +  # ------------------ +  # nix-prefetch-git is your friend to create this part. +  nix-writers = (import <nixpkgs> {}).fetchgit { +    url    = "https://cgit.krebsco.de/nix-writers"; +    rev    = "c8d71ce6acbae124a7bc162323442979a1d6df06"; +    sha256 = "0r1p34a3jvm55v5sbkfbjpqcld2cbdrvc5685g723b1frhw666ag"; +  }; + +in { + +  # include the repository as overlay +  nixpkgs.config.packageOverrides = import "${nix-writers}/pkgs" pkgs; + +  ... + +} +``` + +# How to use the scripts + +once you've included the nix-writers as overlay you can use the scripts to create to create binaries (for example) + +``` +  environment.systemPackages = with pkgs; [ + +    # Haskell example +    (writeHaskell "nix-writers-example-haskell" { +      executables."nix-writers-example-haskell".text = ''main = print "this is a writeHaskell example"''; +    }) + +    # C example +    (writeC "nix-writers-example-c" { +      destination = "/bin/nix-writers-example-c"; +    } ''int main() { printf("this is a writeC example!\n"); }'') + +    # Dash example +    (writeDashBin "nix-writers-example-dash" ''echo "this is a writeDash example!"'') + +  ]; +``` | 
