Is it possible to use IHP without installing Nix? I already have brew as general package manager and ghcup/cabal as Haskell toolchain/library manager and dread having yet another package manager that might interfere...
The IHP docs assume no knowledge about nix, so it should still mostly be very simple to get started.
We compiled a couple more reasons why IHP uses nix in this blog post: https://ihp.digitallyinduced.com/blog/2020-07-22-why-ihp-is-...
Btw: To give IHP a try without installing Nix you can also try out the official GitPod image here https://gitpod.io/#https://github.com/gitpod-io/template-ihp :)
{ pkgs ? import <nixpkgs> {} }:
let
ihp-new = pkgs.fetchzip {
url = "https://downloads.digitallyinduced.com/ihp-new.tar.gz";
sha256 = "0prpw46iyrjwzglq38n4kfn68dv2piw6dn8464ra99yl1dml465m";
};
in
pkgs.mkShell {
packages = [pkgs.cachix ihp-new];
}
Running nix-shell with this would download the ihp-new program, and you'd have access to it (and postgres, etc., when you run with a shell with direnv enabled), but outside of the nix-shell, your PATH and other things would be unaffected.https://github.com/digitallyinduced/ihp/blob/master/ProjectG...
The actual IHP project has it's own nix-shell environment, so that all project dependencies are managed locally (https://github.com/digitallyinduced/ihp-boilerplate/blob/mas...).