Compare commits
2 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
76a2560cdb | ||
|
|
378677acda |
@@ -4,8 +4,8 @@
|
|||||||
<TargetFramework>net9.0</TargetFramework>
|
<TargetFramework>net9.0</TargetFramework>
|
||||||
<RootNamespace>Jellyfin.Plugin.RedditComments</RootNamespace>
|
<RootNamespace>Jellyfin.Plugin.RedditComments</RootNamespace>
|
||||||
<AssemblyName>Jellyfin.Plugin.RedditComments</AssemblyName>
|
<AssemblyName>Jellyfin.Plugin.RedditComments</AssemblyName>
|
||||||
<AssemblyVersion>1.0.0.0</AssemblyVersion>
|
<AssemblyVersion>1.0.1.0</AssemblyVersion>
|
||||||
<FileVersion>1.0.0.0</FileVersion>
|
<FileVersion>1.0.1.0</FileVersion>
|
||||||
<GenerateDocumentationFile>true</GenerateDocumentationFile>
|
<GenerateDocumentationFile>true</GenerateDocumentationFile>
|
||||||
<Nullable>enable</Nullable>
|
<Nullable>enable</Nullable>
|
||||||
<ImplicitUsings>disable</ImplicitUsings>
|
<ImplicitUsings>disable</ImplicitUsings>
|
||||||
|
|||||||
@@ -16,14 +16,20 @@ public class PluginServiceRegistrator : IPluginServiceRegistrator
|
|||||||
/// <inheritdoc />
|
/// <inheritdoc />
|
||||||
public void RegisterServices(IServiceCollection serviceCollection, IServerApplicationHost applicationHost)
|
public void RegisterServices(IServiceCollection serviceCollection, IServerApplicationHost applicationHost)
|
||||||
{
|
{
|
||||||
var dbPath = Path.Combine(
|
|
||||||
applicationHost.Resolve<IApplicationPaths>().PluginConfigurationsPath,
|
|
||||||
"RedditComments",
|
|
||||||
"reddit-comments.db");
|
|
||||||
|
|
||||||
serviceCollection.AddSingleton<RateLimiter>();
|
serviceCollection.AddSingleton<RateLimiter>();
|
||||||
serviceCollection.AddSingleton(sp => new RedditClient(sp.GetRequiredService<ILogger<RedditClient>>(), sp.GetRequiredService<RateLimiter>()));
|
serviceCollection.AddSingleton(sp => new RedditClient(sp.GetRequiredService<ILogger<RedditClient>>(), sp.GetRequiredService<RateLimiter>()));
|
||||||
serviceCollection.AddSingleton(sp => new CommentCache(dbPath, sp.GetRequiredService<ILogger<CommentCache>>()));
|
|
||||||
|
// The path is resolved inside the factory (not eagerly here) because the host's service
|
||||||
|
// provider does not exist yet while RegisterServices is running.
|
||||||
|
serviceCollection.AddSingleton(sp =>
|
||||||
|
{
|
||||||
|
var dbPath = Path.Combine(
|
||||||
|
sp.GetRequiredService<IApplicationPaths>().PluginConfigurationsPath,
|
||||||
|
"RedditComments",
|
||||||
|
"reddit-comments.db");
|
||||||
|
return new CommentCache(dbPath, sp.GetRequiredService<ILogger<CommentCache>>());
|
||||||
|
});
|
||||||
|
|
||||||
serviceCollection.AddSingleton(sp => new RedditCommentsService(
|
serviceCollection.AddSingleton(sp => new RedditCommentsService(
|
||||||
sp.GetRequiredService<ILogger<RedditCommentsService>>(),
|
sp.GetRequiredService<ILogger<RedditCommentsService>>(),
|
||||||
sp.GetRequiredService<RedditClient>(),
|
sp.GetRequiredService<RedditClient>(),
|
||||||
|
|||||||
@@ -33,7 +33,7 @@ primarily for anime, where almost every episode has a thread on r/anime.
|
|||||||
|
|
||||||
### Option A — manual install
|
### Option A — manual install
|
||||||
|
|
||||||
1. Download/copy `dist/Jellyfin.Plugin.RedditComments_1.0.0.0.zip`.
|
1. Download/copy `dist/Jellyfin.Plugin.RedditComments_1.0.1.0.zip`.
|
||||||
2. Create a folder `RedditComments` inside your Jellyfin plugins directory:
|
2. Create a folder `RedditComments` inside your Jellyfin plugins directory:
|
||||||
- Linux (native): `/var/lib/jellyfin/plugins/RedditComments`
|
- Linux (native): `/var/lib/jellyfin/plugins/RedditComments`
|
||||||
- Docker: `<your config volume>/plugins/RedditComments`
|
- Docker: `<your config volume>/plugins/RedditComments`
|
||||||
@@ -43,10 +43,10 @@ primarily for anime, where almost every episode has a thread on r/anime.
|
|||||||
|
|
||||||
### Option B — plugin repository
|
### Option B — plugin repository
|
||||||
|
|
||||||
1. Host `dist/Jellyfin.Plugin.RedditComments_1.0.0.0.zip` somewhere reachable by your server
|
1. Host `dist/Jellyfin.Plugin.RedditComments_1.0.1.0.zip` somewhere reachable by your server
|
||||||
(e.g. a GitHub release asset).
|
(e.g. a GitHub release asset).
|
||||||
2. Edit `manifest.json`: set `sourceUrl` to the zip URL and update `checksum` with the zip's MD5
|
2. Edit `manifest.json`: set `sourceUrl` to the zip URL and update `checksum` with the zip's MD5
|
||||||
(`md5sum Jellyfin.Plugin.RedditComments_1.0.0.0.zip`).
|
(`md5sum Jellyfin.Plugin.RedditComments_1.0.1.0.zip`).
|
||||||
3. Host `manifest.json` next to the zip.
|
3. Host `manifest.json` next to the zip.
|
||||||
4. In Jellyfin: **Dashboard → Plugins → Repositories → +**, paste the manifest URL, then install
|
4. In Jellyfin: **Dashboard → Plugins → Repositories → +**, paste the manifest URL, then install
|
||||||
"Reddit Comments" from the catalog and restart.
|
"Reddit Comments" from the catalog and restart.
|
||||||
|
|||||||
@@ -8,12 +8,12 @@
|
|||||||
"category": "General",
|
"category": "General",
|
||||||
"versions": [
|
"versions": [
|
||||||
{
|
{
|
||||||
"version": "1.0.0.0",
|
"version": "1.0.1.0",
|
||||||
"changelog": "- Initial release\n- Player OSD button + comments sidebar\n- Reddit thread search across configurable subreddits\n- SQLite caching with separate TTLs for found/not-found results\n- Sliding-window rate limiter (default 60 requests/minute, max 100)\n- Lazy loading: Reddit is only contacted on button click",
|
"changelog": "- Fix plugin being disabled at startup (eager DI resolve in service registration)\n- Ship as a single DLL using the server's own SQLite assemblies\n- Player OSD button + comments sidebar\n- Reddit thread search across configurable subreddits\n- SQLite caching with separate TTLs for found/not-found results\n- Sliding-window rate limiter (default 60 requests/minute, max 100)\n- Lazy loading: Reddit is only contacted on button click",
|
||||||
"targetAbi": "10.11.0.0",
|
"targetAbi": "10.11.0.0",
|
||||||
"sourceUrl": "https://git.gabjimmy.com/Gabe/Jellyfin-Comments/releases/download/FixedV1/Jellyfin.Plugin.RedditComments_1.0.0.0.zip",
|
"sourceUrl": "https://git.gabjimmy.com/Gabe/Jellyfin-Comments/releases/download/1.0.1.0/Jellyfin.Plugin.RedditComments_1.0.1.0.zip",
|
||||||
"checksum": "83c0fe073263c25c119ef3421fe9dbfb",
|
"checksum": "4261e0c68ce67eab4a41e9a2a042750e",
|
||||||
"timestamp": "2026-07-16T00:00:00Z"
|
"timestamp": "2026-07-16T14:30:00Z"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user