From 0b005c192b2c141c7f6c9bff4a0702361814c21d Mon Sep 17 00:00:00 2001 From: Ben Sima Date: Wed, 13 Aug 2025 13:36:30 -0400 Subject: Prototype PodcastItLater This implements a working prototype of PodcastItLater. It basically just works for a single user currently, but the articles are nice to listen to and this is something that we can start to build with. --- Omni/Bild.nix | 1 + Omni/Bild/Deps.nix | 2 ++ Omni/Bild/Deps/Python.nix | 10 ++++++++++ Omni/Bild/Python.nix | 2 ++ Omni/Test.py | 4 ++++ 5 files changed, 19 insertions(+) (limited to 'Omni') diff --git a/Omni/Bild.nix b/Omni/Bild.nix index 8c10fbe..44902ae 100644 --- a/Omni/Bild.nix +++ b/Omni/Bild.nix @@ -117,6 +117,7 @@ deadnix fd figlet + ffmpeg fzf git git-branchless diff --git a/Omni/Bild/Deps.nix b/Omni/Bild/Deps.nix index 806e7b1..0822fb1 100644 --- a/Omni/Bild/Deps.nix +++ b/Omni/Bild/Deps.nix @@ -36,6 +36,8 @@ in { sweph-data = super.callPackage ./Deps/sweph-data.nix {}; + swtpm = dontCheck super.swtpm; + thrift = dontCheck super.thrift; valkey = dontCheck super.valkey; diff --git a/Omni/Bild/Deps/Python.nix b/Omni/Bild/Deps/Python.nix index e7c796d..0f0c409 100644 --- a/Omni/Bild/Deps/Python.nix +++ b/Omni/Bild/Deps/Python.nix @@ -1,6 +1,11 @@ [ + "boto3" + "botocore" "cryptography" + "feedgen" "flask" + "httpx" + "itsdangerous" "llm" "llm-ollama" "ludic" @@ -12,10 +17,15 @@ "pydantic-ai" "pydantic-ai-slim" "pydantic-graph" + "pydub" + "pytest" + "pytest-asyncio" + "pytest-mock" "requests" "slixmpp" "sqids" "starlette" + "trafilatura" "types-requests" "uvicorn" ] diff --git a/Omni/Bild/Python.nix b/Omni/Bild/Python.nix index f1056b1..ae14ebc 100644 --- a/Omni/Bild/Python.nix +++ b/Omni/Bild/Python.nix @@ -37,7 +37,9 @@ _self: super: { perscache = callPackage ./Deps/perscache.nix {}; pyswisseph = callPackage ./Deps/pyswisseph.nix {}; simple-ascii-tables = callPackage ./Deps/simple-ascii-tables.nix {}; + sphinx = dontCheck pysuper.sphinx; tokenizers = dontCheck pysuper.tokenizers; + uvloop = dontCheck pysuper.uvloop; }; }; diff --git a/Omni/Test.py b/Omni/Test.py index 57270f9..89ef1fa 100644 --- a/Omni/Test.py +++ b/Omni/Test.py @@ -9,6 +9,10 @@ import unittest TestCase = unittest.TestCase +class TestError(Exception): + """When the test environment or harness encounters a problem.""" + + def run(area: App.Area, tests: list[typing.Any]) -> None: """Run the given tests with loglevel determined by area.""" Log.setup(logging.DEBUG if area == App.Area.Test else logging.ERROR) -- cgit v1.2.3