setup karakeep basics

This commit is contained in:
Noah Masur 2025-05-12 03:07:38 +00:00
parent 12c9342748
commit b38205af93
3 changed files with 48 additions and 0 deletions

View File

@ -117,6 +117,7 @@
in
{
audiobooks = "read.${baseName}";
bookmarks = "keep.${baseName}";
books = "books.${baseName}";
budget = "money.${baseName}";
content = "cloud.${baseName}";

View File

@ -0,0 +1,46 @@
{
config,
lib,
...
}:
let
cfg = config.nmasur.presets.services.karakeep;
inherit (config.nmasur.settings) hostnames;
in
{
options.nmasur.presets.services.karakeep.enable = lib.mkEnableOption "Karakeep bookmark manager";
config = lib.mkIf cfg.enable {
services.karakeep = {
enable = true;
meilisearch.enable = true;
extraEnvironment = {
PORT = "5599";
DISABLE_SIGNUPS = "true";
DISABLE_NEW_RELEASE_CHECK = "true";
CRAWLER_FULL_PAGE_SCREENSHOT = "true";
CRAWLER_FULL_PAGE_ARCHIVE = "true";
};
};
nmasur.presets.services.caddy.routes = [
{
match = [ { host = [ hostnames.bookmarks ]; } ];
handle = [
{
handler = "reverse_proxy";
upstreams = [
{ dial = "localhost:${config.services.karakeep.extraEnvironment.PORT}"; }
];
}
];
}
];
# Configure Cloudflare DNS to point to this machine
services.cloudflare-dyndns.domains = [ hostnames.bookmarks ];
};
}

View File

@ -27,6 +27,7 @@ in
gitea.enable = lib.mkDefault true;
grafana.enable = lib.mkDefault true;
influxdb2.enable = lib.mkDefault true;
karakeep.enable = lib.mkDefault true;
litestream.enable = lib.mkDefault true;
mathesar.enable = lib.mkDefault true;
minecraft-server.enable = lib.mkDefault true;