Compare commits

...

19 Commits

Author SHA1 Message Date
Joshua Boniface
83948420a4 Bump version to 10.2.1 2019-02-20 13:29:14 -05:00
Andrew Rabert
8c53407a9d Merge pull request #960 from nvllsvm/dock
Use jellyfin/ffmpeg image
2019-02-20 13:15:23 -05:00
Andrew Rabert
69a81c0bc2 Use jellyfin/ffmpeg image 2019-02-20 12:11:50 -05:00
Bond-009
d978ae1996 Merge pull request #948 from cvium/revert_movie_matching
Revert movie matching
2019-02-19 16:31:01 -05:00
Claus Vium
6016a27736 Check for whitespace 2019-02-19 22:30:21 +01:00
Claus Vium
566646ad8b Remove limit comment 2019-02-19 19:44:22 +01:00
Claus Vium
6c1ca6f737 Remove arbitrary limit and minor style fixes 2019-02-19 19:33:41 +01:00
Claus Vium
aa0c20afd5 Revert "Change multi version logic for movies"
This reverts commit a4055779f6.
2019-02-19 17:39:47 +01:00
Claus Vium
46acff4113 Revert "Remove unnecessary ToList"
This reverts commit 42abb5a993.
2019-02-19 17:39:30 +01:00
Claus Vium
de5c0bab70 Revert "Add Year to the new VideoInfo"
This reverts commit 05ad2e9b3f.
2019-02-19 17:39:10 +01:00
Claus Vium
5181427234 Revert "Merge pull request #924 from cvium/fix_movie_matching"
This reverts commit f274d024ce, reversing
changes made to 4b4399fba6.
2019-02-19 17:34:43 +01:00
Claus Vium
c79324154f Revert "Merge pull request #933 from cvium/fix_movie_matching_again"
This reverts commit 77d4fec6eb, reversing
changes made to f274d024ce.
2019-02-19 17:10:11 +01:00
Bond-009
77d4fec6eb Merge pull request #933 from cvium/fix_movie_matching_again
Semi-revert to prefer old movie grouping behaviour
2019-02-18 16:48:05 -05:00
Claus Vium
29ff80d69c Minor style fixes 2019-02-18 22:02:16 +01:00
Claus Vium
4a700778e3 Semi-revert to prefer old movie grouping behaviour 2019-02-18 21:56:08 +01:00
Vasily
f274d024ce Merge pull request #924 from cvium/fix_movie_matching
Use the movie name instead of folder name
2019-02-18 15:10:36 +03:00
Claus Vium
c45b6aa53e Use the movie name instead of folder name 2019-02-17 07:39:36 +01:00
Andrew Rabert
4b4399fba6 Merge pull request #920 from nvllsvm/dockolate_icetainer
Fix cachedir missing from Docker container
2019-02-16 15:54:16 -05:00
Andrew Rabert
c06598635f Fix cachedir missing from Docker container
Adds the /cache volume and set it to writeable by all. This allows for
those using jellyfin to continue using it without modifying their
config. However, retaining cache will require one to mount the /cache
volume.

Also make the /config and /media dirs 777 by default. No permissions on
mounted volumes will be changed.
2019-02-16 15:25:44 -05:00
7 changed files with 84 additions and 23 deletions

View File

@@ -9,7 +9,7 @@ RUN dotnet publish \
--output /jellyfin \
Jellyfin.Server
FROM jrottenberg/ffmpeg:4.0-vaapi as ffmpeg
FROM jellyfin/ffmpeg as ffmpeg
FROM microsoft/dotnet:${DOTNET_VERSION}-runtime
# libfontconfig1 is required for Skia
RUN apt-get update \
@@ -17,9 +17,11 @@ RUN apt-get update \
libfontconfig1 \
&& apt-get clean autoclean \
&& apt-get autoremove \
&& rm -rf /var/lib/{apt,dpkg,cache,log}
&& rm -rf /var/lib/{apt,dpkg,cache,log} \
&& mkdir -p /cache /config /media \
&& chmod 777 /cache /config /media
COPY --from=ffmpeg / /
COPY --from=builder /jellyfin /jellyfin
EXPOSE 8096
VOLUME /config /media
ENTRYPOINT dotnet /jellyfin/jellyfin.dll --datadir /config
VOLUME /cache /config /media
ENTRYPOINT dotnet /jellyfin/jellyfin.dll --datadir /config --cachedir /cache

View File

@@ -27,8 +27,10 @@ RUN dotnet publish \
FROM microsoft/dotnet:${DOTNET_VERSION}-runtime-stretch-slim-arm32v7
COPY --from=qemu_extract qemu-arm-static /usr/bin
RUN apt-get update \
&& apt-get install --no-install-recommends --no-install-suggests -y ffmpeg
&& apt-get install --no-install-recommends --no-install-suggests -y ffmpeg \
&& mkdir -p /cache /config /media \
&& chmod 777 /cache /config /media
COPY --from=builder /jellyfin /jellyfin
EXPOSE 8096
VOLUME /config /media
ENTRYPOINT dotnet /jellyfin/jellyfin.dll --datadir /config
VOLUME /cache /config /media
ENTRYPOINT dotnet /jellyfin/jellyfin.dll --datadir /config --cachedir /cache

View File

@@ -28,8 +28,10 @@ RUN dotnet publish \
FROM microsoft/dotnet:${DOTNET_VERSION}-runtime-stretch-slim-arm64v8
COPY --from=qemu_extract qemu-aarch64-static /usr/bin
RUN apt-get update \
&& apt-get install --no-install-recommends --no-install-suggests -y ffmpeg
&& apt-get install --no-install-recommends --no-install-suggests -y ffmpeg \
&& mkdir -p /cache /config /media \
&& chmod 777 /cache /config /media
COPY --from=builder /jellyfin /jellyfin
EXPOSE 8096
VOLUME /config /media
ENTRYPOINT dotnet /jellyfin/jellyfin.dll --datadir /config
VOLUME /cache /config /media
ENTRYPOINT dotnet /jellyfin/jellyfin.dll --datadir /config --cachedir /cache

View File

@@ -175,25 +175,52 @@ namespace Emby.Naming.Video
return videos;
}
var list = new List<VideoInfo>();
var folderName = Path.GetFileName(Path.GetDirectoryName(videos[0].Files[0].Path));
if (!string.IsNullOrEmpty(folderName) && folderName.Length > 1)
{
var ordered = videos.OrderBy(i => i.Name);
return ordered.GroupBy(v => new {v.Name, v.Year}).Select(group => new VideoInfo
if (videos.All(i => i.Files.Count == 1 && IsEligibleForMultiVersion(folderName, i.Files[0].Path)))
{
Name = folderName,
Year = group.First().Year,
Files = group.First().Files,
AlternateVersions = group.Skip(1).Select(i => i.Files[0]).ToList(),
Extras = group.First().Extras.Concat(group.Skip(1).SelectMany(i => i.Extras)).ToList()
});
if (HaveSameYear(videos))
{
var ordered = videos.OrderBy(i => i.Name).ToList();
list.Add(ordered[0]);
list[0].AlternateVersions = ordered.Skip(1).Select(i => i.Files[0]).ToList();
list[0].Name = folderName;
list[0].Extras.AddRange(ordered.Skip(1).SelectMany(i => i.Extras));
return list;
}
}
}
return videos;
}
private bool HaveSameYear(List<VideoInfo> videos)
{
return videos.Select(i => i.Year ?? -1).Distinct().Count() < 2;
}
private bool IsEligibleForMultiVersion(string folderName, string testFilename)
{
testFilename = Path.GetFileNameWithoutExtension(testFilename) ?? string.Empty;
if (testFilename.StartsWith(folderName, StringComparison.OrdinalIgnoreCase))
{
testFilename = testFilename.Substring(folderName.Length).Trim();
return string.IsNullOrEmpty(testFilename) ||
testFilename.StartsWith("-") ||
string.IsNullOrWhiteSpace(Regex.Replace(testFilename, @"\[([^]]*)\]", string.Empty)) ;
}
return false;
}
private List<VideoFileInfo> GetExtras(IEnumerable<VideoFileInfo> remainingFiles, List<string> baseNames)
{
foreach (var name in baseNames.ToList())

View File

@@ -1,4 +1,4 @@
using System.Reflection;
[assembly: AssemblyVersion("10.2.0")]
[assembly: AssemblyFileVersion("10.2.0")]
[assembly: AssemblyVersion("10.2.1")]
[assembly: AssemblyFileVersion("10.2.1")]

View File

@@ -1,3 +1,19 @@
jellyfin (10.2.1-1) unstable; urgency=medium
* jellyfin:
* PR920 Fix cachedir missing from Docker container
* PR924 Use the movie name instead of folder name
* PR933 Semi-revert to prefer old movie grouping behaviour
* PR948 Revert movie matching (supercedes PR933, PR924, PR739)
* PR960 Use jellyfin/ffmpeg image
* jellyfin-web:
* PR136 Re-add OpenSubtitles configuration page
* PR137 Replace HeaderEmbyServer with HeaderJellyfinServer on plugincatalog
* PR138 Remove left-over JS for Customize Home Screen
* PR141 Exit fullscreen automatically after video playback ends
-- Jellyfin Packaging Team <packaging@jellyfin.org> Wed, 20 Feb 2019 11:36:16 -0500
jellyfin (10.2.0-2) unstable; urgency=medium
* jellyfin:

View File

@@ -7,8 +7,8 @@
%endif
Name: jellyfin
Version: 10.2.0
Release: 2%{?dist}
Version: 10.2.1
Release: 1%{?dist}
Summary: The Free Software Media Browser
License: GPLv2
URL: https://jellyfin.media
@@ -140,6 +140,18 @@ fi
%systemd_postun_with_restart jellyfin.service
%changelog
* Wed Feb 20 2019 Jellyfin Packaging Team <packaging@jellyfin.org>
- jellyfin:
- PR920 Fix cachedir missing from Docker container
- PR924 Use the movie name instead of folder name
- PR933 Semi-revert to prefer old movie grouping behaviour
- PR948 Revert movie matching (supercedes PR933, PR924, PR739)
- PR960 Use jellyfin/ffmpeg image
- jellyfin-web:
- PR136 Re-add OpenSubtitles configuration page
- PR137 Replace HeaderEmbyServer with HeaderJellyfinServer on plugincatalog
- PR138 Remove left-over JS for Customize Home Screen
- PR141 Exit fullscreen automatically after video playback ends
* Fri Feb 15 2019 Jellyfin Packaging Team <packaging@jellyfin.org>
- jellyfin:
- PR452 Use EF Core for Activity database