···
crane.url = "github:ipetkov/crane";
13
-
outputs = { self, nixpkgs, rust-overlay, crane }:
15
-
supportedSystems = [ "x86_64-linux" "aarch64-linux" "x86_64-darwin" "aarch64-darwin" ];
21
+
supportedSystems = [
forAllSystems = nixpkgs.lib.genAttrs supportedSystems;
18
-
mkPkgs = system: import nixpkgs {
20
-
overlays = [ rust-overlay.overlays.default ];
33
+
overlays = [ rust-overlay.overlays.default ];
24
-
packages = forAllSystems (system:
37
+
packages = forAllSystems (
rustToolchain = pkgs.rust-bin.stable.latest.default;
···
src = craneLib.cleanCargoSource ./.;
34
-
buildInputs = with pkgs; [
37
-
] ++ pkgs.lib.optionals pkgs.stdenv.isDarwin [
38
-
pkgs.darwin.apple_sdk.frameworks.Security
39
-
pkgs.darwin.apple_sdk.frameworks.SystemConfiguration
54
+
++ pkgs.lib.optionals pkgs.stdenv.isDarwin [
nativeBuildInputs = with pkgs; [
···
cargoArtifacts = craneLib.buildDepsOnly commonArgs;
51
-
prism = craneLib.buildPackage (commonArgs // {
52
-
inherit cargoArtifacts;
67
+
prism = craneLib.buildPackage (
70
+
inherit cargoArtifacts;
60
-
devShells = forAllSystems (system:
80
+
devShells = forAllSystems (
rustToolchain = pkgs.rust-bin.stable.latest.default.override {
64
-
extensions = [ "rust-src" "rust-analyzer" ];
69
-
buildInputs = with pkgs; [
79
-
] ++ pkgs.lib.optionals pkgs.stdenv.isDarwin [
80
-
pkgs.darwin.apple_sdk.frameworks.Security
81
-
pkgs.darwin.apple_sdk.frameworks.SystemConfiguration
106
+
++ pkgs.lib.optionals pkgs.stdenv.isDarwin [
DATABASE_URL = "postgres://postgres:postgres@localhost:5432/prism";
···
echo "Database: $DATABASE_URL"
overlays.default = final: prev: {
prism = self.packages.${final.stdenv.hostPlatform.system}.prism;