domenkozar / hie-nix

Nix packages for Haskell IDE Engine
115 stars 18 forks source link

Add instructions for NixOS #11

Open domenkozar opened 6 years ago

domenkozar commented 6 years ago

As per https://github.com/domenkozar/proxsign-nix/pull/1

wpoosanguansit commented 5 years ago

I tried to add hie86 to Nixos through systemPackages with:

systemPackages = with pkgs; [ (import (builtins.fetchTarball { url = "https://github.com/domenkozar/hie-nix/tarball/master/domenkozar-hie-nix-19f47e0.tar.gz"; sha256 = "0smhpz7hw382mlin79v681nws4pna5bdg0w8cjb4iq23frnb5dw6"; })) ]

But I am still hit with this error:

1 of 1 test failed Please report to https://github.com/libuv/libuv/issues

make[1]: [Makefile:4578: check-TESTS] Error 1 make[1]: Leaving directory '/tmp/nix-build-libuv-1.19.2.drv-0/source' make: [Makefile:4835: check-am] Error 2 builder for '/nix/store/szgra10rm8hghapn13wls8h98wrjwxc1-libuv-1.19.2.drv' failed with exit code 2 cannot build derivation '/nix/store/fdrfqwzxapxnhfshdq6gjdllqlqaiskf-cmake-3.10.2.drv': 1 dependencies couldn't be built building '/nix/store/kdaxdjhsf7kk3j1zm88ygqjii4sln5sy-libvirt-3.10.0.tar.xz.drv'...

Not quite sure if this is related to just libuv or also with Nixos. I have reported to the link above. Thanks for your help.

wizzup commented 5 years ago

@wpoosanguansit

Instead of adding a system-wide package to NixOS, there is another way to add a user package by packageOverrides

Example: with following config.nix

# ~/.config/nixpkgs/config.nix
{ pkgs ? import <nixpkgs> {} }:
with pkgs;

let
  hie-nix = fetchFromGitHub {
      owner = "domenkozar";
      repo = "hie-nix";
      rev = "6794005f909600679d0b7894d0e7140985920775";
      sha256 = "0pc90ns0xcsa6b630d8kkq5zg8yzszbgd7qmnylkqpa0l58zvnpn";
    };
in
  {
    packageOverrides = super: {
      hie86 = (import hie-nix { }).hie86;
    };
  }

you can use hie in nix-shell's shell

$ nix-shell -p hie86
$ hie-wrapper --version
Version 0.6.0.0 x86_64 ghc-8.6.3

or install using nix-env -iA nixos.hie86


Also, if I remember correctly, it is recommend to use hie-wrapper instead of hie binary. (I've lost the reference)

wpoosanguansit commented 5 years ago

ขอบใจมากวิสุทธิ์ ผมก็ใช้ nix-env -iA ใน vagrant file ไป. นี่ไม่แน่ใจว่ารุ่นพี่หรือรุ่นน้อง มีไลน์หรืออีเมล์อยากแชร์ไหม จะได้ทำความรู้จักคุยกันสดวกหน่อย ขอบใจมาก

domenkozar commented 5 years ago

Thai! :D