2023-10-11 05:14:20 +00:00
|
|
|
# help:
|
|
|
|
# - #gpodder on irc.libera.chat
|
2023-05-16 02:12:14 +00:00
|
|
|
{ config, pkgs, sane-lib, ... }:
|
2023-01-06 16:27:05 +00:00
|
|
|
|
|
|
|
let
|
2023-01-08 05:24:56 +00:00
|
|
|
feeds = sane-lib.feeds;
|
|
|
|
all-feeds = config.sane.feeds;
|
2023-12-06 15:36:05 +00:00
|
|
|
wanted-feeds = feeds.filterByFormat [ "podcast" "video" ] all-feeds;
|
2023-01-06 16:27:05 +00:00
|
|
|
in {
|
2023-05-17 10:39:50 +00:00
|
|
|
sane.programs.gpodder = {
|
2024-01-20 11:11:12 +00:00
|
|
|
packageUnwrapped = pkgs.gpodder-adaptive-configured.overrideAttrs (base: {
|
2023-10-11 05:14:20 +00:00
|
|
|
# environment variables:
|
|
|
|
# - GPODDER_HOME (defaults to "~/gPodder")
|
|
|
|
# - GPODDER_DOWNLOAD_DIR (defaults to "$GPODDER_HOME/Downloads")
|
|
|
|
# - GPODDER_WRITE_LOGS ("yes" or "no")
|
|
|
|
# - GPODDER_EXTENSIONS
|
|
|
|
# - GPODDER_DISABLE_EXTENSIONS ("yes" or "no")
|
|
|
|
extraMakeWrapperArgs = (base.extraMakeWrapperArgs or []) ++ [
|
|
|
|
"--set" "GPODDER_HOME" "~/.local/share/gPodder"
|
2024-01-23 16:44:47 +00:00
|
|
|
# place downloads in a shared media directory to ensure sandboxed apps can read them
|
|
|
|
"--set" "GPODDER_DOWNLOAD_DIR" "~/Videos/gPodder"
|
2023-10-11 05:14:20 +00:00
|
|
|
];
|
|
|
|
});
|
2024-02-09 10:31:42 +00:00
|
|
|
sandbox.method = "bwrap";
|
|
|
|
sandbox.wrapperType = "wrappedDerivation";
|
|
|
|
sandbox.net = "clearnet";
|
2024-02-11 23:37:16 +00:00
|
|
|
sandbox.extraHomePaths = [ "Videos/gPodder" ];
|
|
|
|
|
2023-05-17 10:39:50 +00:00
|
|
|
fs.".config/gpodderFeeds.opml".symlink.text = feeds.feedsToOpml wanted-feeds;
|
|
|
|
|
|
|
|
# XXX: we preserve the whole thing because if we only preserve gPodder/Downloads
|
|
|
|
# then startup is SLOW during feed import, and we might end up with zombie eps in the dl dir.
|
2023-11-08 15:32:50 +00:00
|
|
|
persist.byStore.plaintext = [ ".local/share/gPodder" ];
|
2023-05-17 10:39:50 +00:00
|
|
|
};
|
2023-01-06 16:27:05 +00:00
|
|
|
}
|