{ description = "Jellyfin Lessons — a Jellyfin plugin"; inputs = { nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable"; }; outputs = { self, nixpkgs }: let forAllSystems = fn: nixpkgs.lib.genAttrs nixpkgs.lib.systems.flakeExposed fn; in { devShells = forAllSystems ( system: let pkgs = nixpkgs.legacyPackages.${system}; in { default = pkgs.mkShell { packages = [ pkgs.dotnetCorePackages.sdk_9_0 pkgs.typst pkgs.nodejs ]; shellHook = '' echo "jellyfin-lessons dev shell" echo " dotnet: $(dotnet --version)" echo " typst: $(typst --version)" echo " node: $(node --version)" ''; }; } ); packages = forAllSystems ( system: let pkgs = nixpkgs.legacyPackages.${system}; in { default = pkgs.callPackage ( { buildDotnetModule, dotnetCorePackages, lib, }: buildDotnetModule { pname = "jellyfin-lessons"; version = "0.1.0"; src = self; projectFile = "plugin/Jellyfin.Plugin.Lessons.csproj"; nugetDeps = ./deps.json; dotnet-sdk = dotnetCorePackages.sdk_9_0; dotnet-runtime = dotnetCorePackages.aspnetcore_9_0; meta = { description = "Jellyfin Lessons plugin"; license = lib.licenses.mit; platforms = lib.platforms.all; }; } ) { }; } ); }; }