{ description = "rauhala.info"; inputs = { nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable"; flake-utils.url = "github:numtide/flake-utils"; }; outputs = { self, nixpkgs, flake-utils }: { } // flake-utils.lib.eachDefaultSystem (system: let # pkgs = import nixpkgs { inherit system; overlays = [ self.overlay ]; }; pkgs = nixpkgs.legacyPackages.${system}; hp = pkgs.haskellPackages.override ( old: { overrides = pkgs.lib.composeExtensions ( old.overrides or (_: _: {})) (f: p: { build-rauhala-info = f.callPackage ./site {}; }); } ); in rec { # packages = { inherit (pkgs) build-rauhala-info rauhala-info deploy-rauhala-info; }; packages.build-rauhala-info = pkgs.runCommand "site" { buildInputs = [pkgs.makeWrapper]; } '' mkdir -p $out/bin/ cp ${hp.build-rauhala-info}/bin/site $out/bin/ wrapProgram $out/bin/site --prefix PATH : ${ pkgs.lib.makeBinPath [ pkgs.ipfs ] } ''; apps.build-rauhala-info = flake-utils.lib.mkApp { drv = packages.build-rauhala-info; exePath = "/bin/site"; }; packages.deploy-rauhala-info = with pkgs; runCommand "deploy-rauhala-info.sh" { inherit bash ipfs; } '' mkdir -p $out/bin/ substituteAll ${./support/deploy-rauhala-info.sh} $out/bin/deploy-rauhala-info.sh chmod u+x $out/bin/deploy-rauhala-info.sh ''; packages.rauhala-info = pkgs.callPackage ./rauhala.info { site = packages.build-rauhala-info; }; apps.deploy-rauhala-info = flake-utils.lib.mkApp { drv = pkgs.deploy-rauhala-info; exePath = "/bin/deploy-rauhala-info.sh"; }; defaultPackage = packages.rauhala-info; defaultApp = packages.build-rauhala-info; devShell = hp.shellFor { packages = h: [h.build-rauhala-info]; buildInputs = with pkgs; [ ghcid cabal-install stylish-haskell entr haskell-language-server ipfs ]; }; }); }