From 3916205d56d69325b00b151a99980539c221744b Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Fri, 10 Apr 2026 12:44:38 +0000 Subject: [PATCH 1/7] chore: update version table in README [skip ci] --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 9562571..ab2f232 100644 --- a/README.md +++ b/README.md @@ -31,8 +31,8 @@ | Channel | Version | Notes | |------------|---------------------------------------------------------------------|------------------------------| -| **Stable** | [v2.2.0.4](https://github.com/Jellyfin2Samsung/Samsung-Jellyfin-Installer/releases/tag/v2.2.0.4) | Recommended for most users | -| **Beta** | [v2.2.0.6-beta](https://github.com/Jellyfin2Samsung/Samsung-Jellyfin-Installer/releases/tag/v2.2.0.6-beta) | Includes new features | +| **Stable** | [v2.2.0.6](https://github.com/Jellyfin2Samsung/Samsung-Jellyfin-Installer/releases/tag/v2.2.0.6) | Recommended for most users | +| **Beta** | [N/A](#) | Includes new features | From 3f45b55f02800b152885d38e973c9ff46d7224d8 Mon Sep 17 00:00:00 2001 From: Patrick Stel Date: Fri, 10 Apr 2026 15:50:38 +0200 Subject: [PATCH 2/7] Single call instead of double preventing connection drop --- .../Services/TizenInstallerService.cs | 20 +++++++++---------- 1 file changed, 9 insertions(+), 11 deletions(-) diff --git a/Jellyfin2Samsung-CrossOS/Services/TizenInstallerService.cs b/Jellyfin2Samsung-CrossOS/Services/TizenInstallerService.cs index e6bb4be..0292ed1 100644 --- a/Jellyfin2Samsung-CrossOS/Services/TizenInstallerService.cs +++ b/Jellyfin2Samsung-CrossOS/Services/TizenInstallerService.cs @@ -383,8 +383,7 @@ namespace Jellyfin2Samsung.Services if (string.IsNullOrEmpty(tvDuid)) return null; - string tizenOs = await FetchTizenOsAsync(tvIpAddress); - string sdkToolPath = await FetchSdkPathAsync(tvIpAddress); + var (tizenOs, sdkToolPath) = await FetchCapabilitiesAsync(tvIpAddress); if (string.IsNullOrEmpty(tizenOs)) tizenOs = Constants.Defaults.TizenOsVersion; @@ -658,18 +657,17 @@ namespace Jellyfin2Samsung.Services return output.Output.Split('\n', StringSplitOptions.RemoveEmptyEntries).FirstOrDefault()?.Trim() ?? string.Empty; } - private async Task FetchTizenOsAsync(string tvIpAddress) + private async Task<(string tizenOs, string sdkToolPath)> FetchCapabilitiesAsync(string tvIpAddress) { var output = await _processHelper.RunCommandAsync(TizenSdbPath!, $"capability {tvIpAddress}"); - var match = RegexPatterns.TizenCapability.PlatformVersion.Match(output.Output); - return match.Success ? match.Groups[1].Value.Trim() : string.Empty; - } - private async Task FetchSdkPathAsync(string tvIpAddress) - { - var output = await _processHelper.RunCommandAsync(TizenSdbPath!, $"capability {tvIpAddress}"); - var match = RegexPatterns.TizenCapability.SdkToolPath.Match(output.Output); - return match.Success ? match.Groups[1].Value.Trim() : Constants.Defaults.SdkToolPath; + var versionMatch = RegexPatterns.TizenCapability.PlatformVersion.Match(output.Output); + string tizenOs = versionMatch.Success ? versionMatch.Groups[1].Value.Trim() : string.Empty; + + var pathMatch = RegexPatterns.TizenCapability.SdkToolPath.Match(output.Output); + string sdkToolPath = pathMatch.Success ? pathMatch.Groups[1].Value.Trim() : Constants.Defaults.SdkToolPath; + + return (tizenOs, sdkToolPath); } private async Task GetTvDuidAsync(string tvIpAddress) From d7424138c6d52f86e4c8d7ca0d7dbd01bd33a492 Mon Sep 17 00:00:00 2001 From: PatrickSt1991 Date: Sat, 11 Apr 2026 14:06:56 +0200 Subject: [PATCH 3/7] Clear CustomWgt path after install --- Jellyfin2Samsung-CrossOS/ViewModels/MainWindowViewModel.cs | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/Jellyfin2Samsung-CrossOS/ViewModels/MainWindowViewModel.cs b/Jellyfin2Samsung-CrossOS/ViewModels/MainWindowViewModel.cs index 919e32d..79f2162 100644 --- a/Jellyfin2Samsung-CrossOS/ViewModels/MainWindowViewModel.cs +++ b/Jellyfin2Samsung-CrossOS/ViewModels/MainWindowViewModel.cs @@ -481,8 +481,7 @@ namespace Jellyfin2Samsung.ViewModels if (!AppSettings.Default.KeepWGTFile) _packageHelper.CleanupDownloadedPackage(customPath); - AppSettings.Default.CustomWgtPath = string.Empty; - AppSettings.Default.Save(); + CustomWgtPath = string.Empty; } else { From 2d6f5492f813c628e78b64516502c70fa592e677 Mon Sep 17 00:00:00 2001 From: Confused-Engineer <101591048+Confused-Engineer@users.noreply.github.com> Date: Sat, 11 Apr 2026 10:16:46 -0400 Subject: [PATCH 4/7] Upload shell.nix --- shell.nix | 81 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 81 insertions(+) create mode 100644 shell.nix diff --git a/shell.nix b/shell.nix new file mode 100644 index 0000000..2db2ccd --- /dev/null +++ b/shell.nix @@ -0,0 +1,81 @@ +{ pkgs ? import {} }: + +let + krb5WithUnversionedLib = pkgs.runCommand "krb5-unversioned-so" {} '' + mkdir -p $out/lib + ln -s ${pkgs.krb5}/lib/libgssapi_krb5.so.2 $out/lib/libgssapi_krb5.so + ''; + + # FHS environment that provides /lib, /lib64, /usr/lib etc. + # so dynamically linked binaries (TizenSdb, .NET native bits) just work. + fhs = pkgs.buildFHSEnv { + name = "jellyfin2samsung-fhs"; + + targetPkgs = p: with p; [ + # Build and Run + dotnet-sdk_8 + patchelf + file + stdenv.cc.cc.lib + openssl + icu + zlib + libgcc.lib + krb5 + krb5WithUnversionedLib + + # Fonts and Rendering + fontconfig + freetype + libGL + + # X11 tools + xorg.libX11 + xorg.libICE + xorg.libSM + xorg.libXext + xorg.libXcursor + xorg.libXi + xorg.libXrandr + xorg.libXrender + xorg.libXinerama + xorg.libXcomposite + xorg.libXdamage + xorg.libXfixes + xorg.libXtst + + # Some other packages that may be needed if not installed system wide + nmap + iproute2 + curl + wget + xdg-utils + ]; + + runScript = pkgs.writeShellScript "jellyfin2samsung-entry" '' + export DOTNET_CLI_TELEMETRY_OPTOUT=1 + export DOTNET_NOLOGO=1 + + dotnet publish Jellyfin2Samsung-CrossOS/Jellyfin2Samsung.csproj \ + -c Release \ + -r linux-x64 \ + --self-contained true \ + -p:PublishSingleFile=false \ + -p:PublishTrimmed=false + + Jellyfin2Samsung-CrossOS/bin/Release/net8.0/linux-x64/publish/Jellyfin2Samsung + ''; + }; + +in +pkgs.mkShell { + name = "jellyfin2samsung"; + + buildInputs = [ + fhs + ]; + + shellHook = '' + jellyfin2samsung-fhs + ''; +} From 598274ec0878082042e949c0eb751e0631bcb6a2 Mon Sep 17 00:00:00 2001 From: Patrick Date: Sat, 11 Apr 2026 20:01:32 +0200 Subject: [PATCH 5/7] Add NixOS instructions to README Added instructions for using NixOS with the Samsung2Jellyfin branch. --- README.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/README.md b/README.md index ab2f232..fb4068e 100644 --- a/README.md +++ b/README.md @@ -56,6 +56,8 @@ Thatโ€™s it. No manual certificate handling required in most cases. ๐ŸŽฅ Full walkthrough: https://www.youtube.com/watch?v=_8mSV5pW-ic +**NixOS:** Clone the [`Samsung2Jellyfin` branch](https://github.com/Jellyfin2Samsung/Samsung-Jellyfin-Installer.git) and run `nix-shell` โ€” the shell environment will automatically build and launch the tool. + --- ## ๐Ÿ“š Documentation From 912bc8468759a96b669f96849bef30d395f251aa Mon Sep 17 00:00:00 2001 From: Patrick Date: Sat, 11 Apr 2026 20:04:53 +0200 Subject: [PATCH 6/7] Update AppSettings.cs --- Jellyfin2Samsung-CrossOS/Helpers/AppSettings.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Jellyfin2Samsung-CrossOS/Helpers/AppSettings.cs b/Jellyfin2Samsung-CrossOS/Helpers/AppSettings.cs index 449f3dc..2d5e5c4 100644 --- a/Jellyfin2Samsung-CrossOS/Helpers/AppSettings.cs +++ b/Jellyfin2Samsung-CrossOS/Helpers/AppSettings.cs @@ -84,7 +84,7 @@ namespace Jellyfin2Samsung.Helpers // ----- Application-scoped settings (readonly at runtime) ----- public string ReleasesUrl { get; set; } = "https://api.github.com/repos/jeppevinkel/jellyfin-tizen-builds/releases"; public string AuthorEndpoint { get; set; } = "https://dev.tizen.samsung.com/apis/v2/authors"; - public string AppVersion { get; set; } = "v2.2.0.6"; + public string AppVersion { get; set; } = "v2.2.0.7"; public string TizenSdb { get; set; } = "https://api.github.com/repos/PatrickSt1991/tizen-sdb/releases"; public string JellyfinAvRelease { get; set; } = "https://api.github.com/repos/PatrickSt1991/tizen-jellyfin-avplay/releases"; public string JellyfinAvReleaseFork { get; set; } = "https://api.github.com/repos/asamahy/tizen-jellyfin-avplay/releases"; From 74dbde42765f32eae397bc41dd97077025c75ae9 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Sat, 11 Apr 2026 18:08:21 +0000 Subject: [PATCH 7/7] chore: update version table in README [skip ci] --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index fb4068e..08f8fce 100644 --- a/README.md +++ b/README.md @@ -32,7 +32,7 @@ | Channel | Version | Notes | |------------|---------------------------------------------------------------------|------------------------------| | **Stable** | [v2.2.0.6](https://github.com/Jellyfin2Samsung/Samsung-Jellyfin-Installer/releases/tag/v2.2.0.6) | Recommended for most users | -| **Beta** | [N/A](#) | Includes new features | +| **Beta** | [v2.2.0.7-beta](https://github.com/Jellyfin2Samsung/Samsung-Jellyfin-Installer/releases/tag/v2.2.0.7-beta) | Includes new features |