selfprivacy-rest-api/flake.nix

39 lines
1.1 KiB
Nix
Raw Normal View History

2023-09-17 22:09:00 +00:00
{
description = "SelfPrivacy API application flake";
inputs.nixpkgs.url = "github:nixos/nixpkgs";
2023-09-17 22:09:00 +00:00
outputs = { nixpkgs, ... }:
let
system = "x86_64-linux";
pkgs = nixpkgs.legacyPackages.${system};
selfprivacy-graphql-api = pkgs.callPackage ./default.nix {
pythonPackages = pkgs.python310Packages;
};
in
{
packages.${system}.default = selfprivacy-graphql-api;
devShells.${system}.default = pkgs.mkShell {
inputsFrom = [ selfprivacy-graphql-api ];
packages = with pkgs; [
black
rclone
redis
restic
];
# FIXME is it still needed inside shellHook?
# PYTHONPATH=${sp-python}/${sp-python.sitePackages}
shellHook = ''
# envs set with export and as attributes are treated differently.
# for example. printenv <Name> will not fetch the value of an attribute.
export USE_REDIS_PORT=6379
pkill redis-server
sleep 2
setsid redis-server --bind 127.0.0.1 --port $USE_REDIS_PORT >/dev/null 2>/dev/null &
# maybe set more env-vars
'';
};
};
nixConfig.bash-prompt-suffix = "[SP devshell] ";
}