{ description = "Dev Setup"; inputs.nixpkgs.url = "github:NixOS/nixpkgs/nixpkgs-unstable"; inputs.flake-utils.url = "github:numtide/flake-utils"; outputs = {nixpkgs, flake-utils, ...}: flake-utils.lib.eachDefaultSystem (system: let pkgs = import nixpkgs { inherit system; }; ghcOverrides = hself: hsuper: rec { berlin-scraper = hself.callPackage ./berlin-scraper {}; }; haskellPackages = pkgs.haskellPackages.override { overrides = ghcOverrides; }; in rec { packages = rec { dev-env = haskellPackages.shellFor { packages = p: [ p.berlin-scraper ]; buildInputs = [ pkgs.haskellPackages.cabal-install pkgs.haskell-language-server pkgs.cabal2nix # For cabal pkgs.pkg-config pkgs.binutils pkgs.xq pkgs.htmlq pkgs.dasel ]; }; }; defaultPackage = packages.dev-env; }); }