diff --git a/flake.lock b/flake.lock index d9f1f48..a25fafe 100644 --- a/flake.lock +++ b/flake.lock @@ -1,5 +1,20 @@ { "nodes": { + "cargo-doc-live": { + "locked": { + "lastModified": 1717703956, + "narHash": "sha256-Uf9mO5mCRUum3XVsEfPVg4bu74u/mBhXDr1ec0nTy2Y=", + "owner": "srid", + "repo": "cargo-doc-live", + "rev": "8bfee314e834b1e7cdb9b51b51a3cf1135fd36d8", + "type": "github" + }, + "original": { + "owner": "srid", + "repo": "cargo-doc-live", + "type": "github" + } + }, "crane": { "inputs": { "nixpkgs": [ @@ -118,10 +133,27 @@ "type": "github" } }, + "process-compose-flake": { + "locked": { + "lastModified": 1717682476, + "narHash": "sha256-EjmlQSBs6XxsOEk7KQSpk2m/mkRtUpH++jZQix2jFgE=", + "owner": "Platonic-Systems", + "repo": "process-compose-flake", + "rev": "8a6fae467d4862f2be9aa2954ab2d1e324c399f4", + "type": "github" + }, + "original": { + "owner": "Platonic-Systems", + "repo": "process-compose-flake", + "type": "github" + } + }, "root": { "inputs": { + "cargo-doc-live": "cargo-doc-live", "flake-parts": "flake-parts", "nixpkgs": "nixpkgs", + "process-compose-flake": "process-compose-flake", "rust-flake": "rust-flake", "systems": "systems_2", "treefmt-nix": "treefmt-nix" diff --git a/flake.nix b/flake.nix index 707ea45..77a7e6f 100644 --- a/flake.nix +++ b/flake.nix @@ -5,6 +5,8 @@ systems.url = "github:nix-systems/default"; rust-flake.url = "github:juspay/rust-flake"; rust-flake.inputs.nixpkgs.follows = "nixpkgs"; + process-compose-flake.url = "github:Platonic-Systems/process-compose-flake"; + cargo-doc-live.url = "github:srid/cargo-doc-live"; # Dev tools treefmt-nix.url = "github:numtide/treefmt-nix"; @@ -17,8 +19,10 @@ inputs.treefmt-nix.flakeModule inputs.rust-flake.flakeModules.default inputs.rust-flake.flakeModules.nixpkgs + inputs.process-compose-flake.flakeModule + inputs.cargo-doc-live.flakeModule ]; - perSystem = { self', pkgs, lib, ... }: { + perSystem = { config, self', pkgs, lib, ... }: { rust-project.crane.args = { buildInputs = lib.optionals pkgs.stdenv.isDarwin ( with pkgs.darwin.apple_sdk.frameworks; [ @@ -39,7 +43,10 @@ devShells.default = pkgs.mkShell { inputsFrom = [ self'.devShells.rust-nix-template ]; - packages = [ pkgs.cargo-watch ]; + packages = [ + pkgs.cargo-watch + config.process-compose.cargo-doc-live.outputs.package + ]; }; packages.default = self'.packages.rust-nix-template; };