planning-poker-gwargh/flake.nix

51 lines
1.7 KiB
Nix

{
description = "Planning Poker web app. Trying to build something and learn new things";
inputs.nixpkgs.url = "github:nixos/nixpkgs";
inputs.flake-utils.url = "github:numtide/flake-utils";
inputs.sbt-derivation.url = "github:zaninime/sbt-derivation/master";
inputs.sbt-derivation.inputs.nixpkgs.follows = "nixpkgs";
outputs = { self, nixpkgs, flake-utils, sbt-derivation }:
flake-utils.lib.eachDefaultSystem
(system:
let
pkgs = nixpkgs.legacyPackages.${system};
packageName = "blanning-poker-grargh";
version = "0.1.1";
in {
devShells.default = pkgs.mkShell {
buildInputs = [
pkgs.nodejs
pkgs.sbt
pkgs.scalafmt
pkgs.jdk
# pkgs.nodePackages.tailwindcss
# pkgs.nodePackages.postcss
];
shellHook = ''
echo "dev env for planning poker BWARGH started"
'';
};
packages.backend = sbt-derivation.lib.mkSbtDerivation rec {
inherit version;
pkgs = nixpkgs.legacyPackages.x86_64-linux;
# ...and the rest of the arguments
pname = "${packageName}-backend";
depsSha256 = "sha256-UOEq6KFS4rh4eaKxnRcVOh4SQWn3hnfpzcyRqPnFvco=";
src = pkgs.nix-gitignore.gitignoreSource [] ./.;
buildPhase = ''
sbt backend/assembly
'';
installPhase = ''
mkdir -p $out/bin
cp backend/target/scala-*/backend-assembly-*.jar $out/bin/
'';
};
}
);
# see https://serokell.io/blog/practical-nix-flakes
}