{ inputs = { flake-utils.url = "github:numtide/flake-utils"; naersk = { url = "github:nix-community/naersk"; inputs.nixpkgs.follows = "nixpkgs"; }; nixpkgs.url = "github:NixOS/nixpkgs/nixpkgs-unstable"; }; outputs = { flake-utils, naersk, nixpkgs, ... }: flake-utils.lib.eachDefaultSystem ( system: let pkgs = (import nixpkgs) { inherit system; }; naersk' = pkgs.callPackage naersk { }; in { # For `nix build` & `nix run`: packages.default = naersk'.buildPackage { src = ./.; nativeBuildInputs = with pkgs; [ cmake flac sqlite ]; }; # For `nix develop`: devShell = pkgs.mkShell { nativeBuildInputs = with pkgs; [ cargo rustc ]; packages = with pkgs; [ nixd nixfmt rust-analyzer clippy ]; }; } ); }