summaryrefslogtreecommitdiff
path: root/Biz/Bild/Rules.nix
AgeCommit message (Collapse)Author
2021-01-15Port lint to HaskellBen Sima
2021-01-08Refactor nix a bitBen Sima
Using lib.pipe for readability. Moved analyze into the public functions so I can debug things easier by calling bild.analyze from the nix repl.
2021-01-08Fix stack overflow in nixBen Sima
There is a bug in nixpkgs where lib.strings.splitString overflows on long lines. builtins.split performs better, but needs the extra filter for some reason. https://github.com/NixOS/nixpkgs/issues/68951
2020-12-30colorize sentry outputBen Sima
2020-12-30bild: build everytingBen Sima
Now bild knows how to determine between modules that require ghcjs and ghc. It also knows what *not* to build, meaning it won't try to build non-buildable nix targets, for example (unfortunately this is just hardcoded for now), but it also won't build scm or py targets that I haven't implemented yet. It just silently fails, which is fine, because it means I can do `bild **/*` and everything just works. Of course, if I want to build scm code then I will have to implement that, but that's not a priority right now.
2020-12-29Deploy hoogle to Biz.DevBen Sima
I had to refactor Biz/Bild/Rules.nix. I also had to checkin my patched hoogle.nix file, but I also upstreamed the patch to nixpkgs-dev so it shouldn't stick around for too long.
2020-12-28ide: add ftags scriptBen Sima
2020-11-28Add pinned python version to shell environmentBen Sima
2020-11-24Add inspekt3d to guile deps, and reorganizeBen Sima
I reorganized in order to debug a problem with the nix overlays. I think having small, focused overlayes is more understandable than one overlay that references itself via `rec`. Also the error traces are easier to follow with smaller overlays.
2020-11-20add nixops to dev shellBen Sima
2020-11-18Extend bild to nix targets properlyBen Sima
Also had to capitalize some stuff, and move some nix files around and rename the metadata directive from 'exe' to 'out' because that just makes more sense, and fix some compiler errors. But now bild treats both nix and hs files as buildable things. So that's cool. One interesting example is Biz/Pie.{nix,hs} - I can either create a dev build of the hs file with ghc, or I can create a fully-encapsulated nix build. Its nice to have both options because a dev build with ghc takes half the amount of time, and I can rely on my locally cached hi and ho files. I think this shows the power of bild, but also can be a somewhat subtle thing. The issue really is with the separate command calls in nix builds vs dev builds. I figure there are a few ways to fix this: 1. Try to use bild inside the nix rules. That could be interesting, but could also lead to some weird behavior or worm holes forming. 2. Extract the command line invocation into a separate file, some kind of really simple template that gets pulled into both programs. It is important to consider that in the future I might want to have bild do a module-by-module nix build of programs, but I'm not sure how that would effect my choice here.
2020-11-17Update nix-shell stuff for linuxBen Sima
2020-11-12Get Biz.Dev setup againBen Sima
Also correctly renamed the files (didn't work the first time thanks to the macOS filesystem) and moved the default build.os settings to a OsBase.nix file to be used via imports.
2020-10-19Remove $ from AlphaBen Sima
2020-10-13Move nix files into Biz.Bild namespaceBen Sima