blob: 843f9c5ddda8ca3f1a5ddeaaca4fb70dedc1b524 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
|
{
description = "slopbot - Zulip bot with stock price lookups and LLM replies";
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
agentd = {
url = "git+file:///home/ben/src/bsima/agentd";
inputs.nixpkgs.follows = "nixpkgs";
};
};
outputs = { self, nixpkgs, agentd }:
let
system = "x86_64-linux";
pkgs = nixpkgs.legacyPackages.${system};
pythonEnv = pkgs.python3.withPackages (ps: [
ps.zulip
ps.yfinance
ps.openai
ps.requests
]);
agent = pkgs.rustPlatform.buildRustPackage {
pname = "agent";
version = "0.1.0";
src = agentd;
cargoLock.lockFile = "${agentd}/Cargo.lock";
cargoBuildFlags = [ "-p" "agent" ];
doCheck = false;
};
in
{
devShells.${system}.default = pkgs.mkShell {
buildInputs = [ pythonEnv agent ];
shellHook = ''
echo "slopbot dev shell ready"
echo "Run: python main.py"
'';
};
packages.${system} = rec {
default = slopbot;
slopbot = pkgs.writeShellScriptBin "slopbot" ''
cd /home/ben/src/bsima/slopbot
export PATH=${agent}/bin:$PATH
export SLOPBOT_AGENT=${agent}/bin/agent
exec ${pythonEnv}/bin/python ${./main.py}
'';
inherit agent;
};
};
}
|