The Free Software Media System

Andrew Rabert def954e8da Remove PUID and PGUID env vars 6 years ago
BDInfo b4edb24ec3 Change libraries from netcoreapp to netstandard 6 years ago
DvdLib b4edb24ec3 Change libraries from netcoreapp to netstandard 6 years ago
Emby.Dlna c58b3a0c47 Rebranded XML profiles 6 years ago
Emby.Drawing b4edb24ec3 Change libraries from netcoreapp to netstandard 6 years ago
Emby.Drawing.ImageMagick b4edb24ec3 Change libraries from netcoreapp to netstandard 6 years ago
Emby.Drawing.Net af71366bb5 Optimize images 6 years ago
Emby.Drawing.Skia a9607555df Add Linux binaries for SkiaSharp 6 years ago
Emby.IsoMounting 330a1df340 Fix markdown formatting 6 years ago
Emby.Naming b4edb24ec3 Change libraries from netcoreapp to netstandard 6 years ago
Emby.Notifications b4edb24ec3 Change libraries from netcoreapp to netstandard 6 years ago
Emby.Photos b4edb24ec3 Change libraries from netcoreapp to netstandard 6 years ago
Emby.Server.Implementations 161f0233b5 Merge pull request #181 from Bond-009/firebase 6 years ago
Emby.XmlTv b4edb24ec3 Change libraries from netcoreapp to netstandard 6 years ago
MediaBrowser.Api 8e9485867b Merge pull request #171 from nvllsvm/state 6 years ago
MediaBrowser.LocalMetadata b4edb24ec3 Change libraries from netcoreapp to netstandard 6 years ago
MediaBrowser.MediaEncoding 1d7d52ff9e Port MediaEncoding and Api.Playback from 10e57ce8d21b4516733894075001819f3cd6db6b 6 years ago
MediaBrowser.Providers b4edb24ec3 Change libraries from netcoreapp to netstandard 6 years ago
MediaBrowser.Server.Mono 494c2e312d Fix changing ProgramDataPath when passed as and arg 6 years ago
MediaBrowser.Tests ecf84d3e64 Remove agreement and app links 6 years ago
MediaBrowser.WebDashboard b4edb24ec3 Change libraries from netcoreapp to netstandard 6 years ago
MediaBrowser.XbmcMetadata b4edb24ec3 Change libraries from netcoreapp to netstandard 6 years ago
Mono.Nat b4edb24ec3 Change libraries from netcoreapp to netstandard 6 years ago
Nuget 39c4542cf6 update query objects 8 years ago
OpenSubtitlesHandler b4edb24ec3 Change libraries from netcoreapp to netstandard 6 years ago
RSSDP 77eba9cc44 Address comments 6 years ago
SocketHttpListener b4edb24ec3 Change libraries from netcoreapp to netstandard 6 years ago
debian a9607555df Add Linux binaries for SkiaSharp 6 years ago
.dockerignore 206bc7911c Add jellyfin Docker image 6 years ago
.drone.yml b988a0644a Remove clone depth 6 years ago
.gitignore 7fc03f8bf1 Whitespace fix 6 years ago
.gitmodules 9f79cd6455 Add GitLab CI 6 years ago
Build-JellyFin.ps1 98fa61a766 build script can generate zip, maybe be run from linux 6 years ago
CODE_OF_CONDUCT.md 2cd2182854 Add code of conduct 6 years ago
CONTRIBUTORS.md ad0f1335d2 Clean up CONTRIBUTORS and differentiate us 6 years ago
Dockerfile def954e8da Remove PUID and PGUID env vars 6 years ago
Dockerfile.debian_package a73d255f51 Enable self-contained binary mode (#160) 6 years ago
LICENSE cc28782707 Remove incorrect .md suffix from LICENSE file 6 years ago
MediaBrowser.sln 9e826965eb Build ImageMagicSharp 6 years ago
MediaBrowser.sln.GhostDoc.xml 6c8d919298 replace file system calls with IFileSystem when needed 11 years ago
README.md 71c42ad298 Move repository install instructions to Wiki 6 years ago
SharedVersion.cs 48facb797e Update to 3.5.2 and .net core 2.1 6 years ago
build-deb.sh 36c79c9491 cleanup 6 years ago

README.md

Jellyfin

Jellyfin is a personal media server. The Jellyfin project was started as a result of Emby's decision to take their code closed-source, as well as various philosophical differences with the core developers. Jellyfin seeks to be the free software alternative to Emby and Plex to provide media management and streaming from a dedicated server to end-user devices.

Jellyfin is descended from Emby 3.5.2, ported to the .NET Core framework, and aims to contain build facilities for every platform.

For further details, please see our wiki. To receive the latest project updates feel free to join our public chat on Matrix/Riot and to subscribe to our subreddit.

Feature Requests

While our first priority is a stable build, we will eventually add features that were missing in Emby or were not well implemented (technically or philosophically).

Feature Requests

Contributing to Jellyfin

If you're interested in contributing, please see our wiki for guidelines.

Prebuilt Jellyfin packages

Prebuild packages are available for Debian/Ubuntu and Arch, and via Docker Hub.

Docker

The Jellyfin Docker image is available on Docker Hub at https://hub.docker.com/r/jellyfin/jellyfin/

Arch

The Jellyfin package is in the AUR at https://aur.archlinux.org/packages/jellyfin-git/

Unraid

An Unraid Docker template is available. See this documentation page for details on installing it.

Debian/Ubuntu

A package repository is available at https://repo.jellyfin.org.

NOTE: Ubuntu users may find that the ffmpeg dependency package is not present in their release or is simply a rebranded libav which is not directly compatible. Please obtain the ffmpeg package directly from the FFMPEG site to use Jellyfin on Ubuntu.

For instructions on using the repository, please see our wiki.

Building Jellyfin packages from source

Jellyfin seeks to integrate build facilities for any desired packaging format. Instructions for the various formats can be found below.

NOTE: When building from source, only cloning the full Git repository is supported, rather than using a .zip/.tar archive, in order to support submodules.

Debian/Ubuntu

Debian build facilities are integrated into the repo at debian/.

  1. Install the dotnet-sdk-2.2 package via Microsoft's repositories.
  2. Run dpkg-buildpackage -us -uc.
  3. Install the resulting jellyfin_*.deb file on your system.

A huge thanks to Carlos Hernandez who created the original Debian build configuration for Emby 3.1.1.

Windows (64 bit)

A pre-built windows installer will be available soon. Until then it isn't too hard to install Jellyfin from Source.

  1. Install the dotnet core SDK 2.2 from Microsoft's Webpage and install Git for Windows
  2. Clone Jellyfin into a directory of your choice.

    git clone https://github.com/jellyfin/jellyfin.git C:\Jellyfin
    
  3. From the Jellyfin directory you can use our Jellyfin build script. Call Build-Jellyfin.ps1 -InstallFFMPEG from inside the directory in a powershell window. Make sure you've set your executionpolicy to unrestricted.

    Additional flags:

    • If you want to optimize for your environment you can use the -WindowsVersion and -Architecture flags to do so; the default is generic Windows x64.
    • The -InstallLocation flag lets you select where the compiled binaries go; the default is $Env:AppData\JellyFin-Server\ .
    • The -InstallFFMPEG flag will automatically pull the stable ffmpeg binaries appropriate to your architecture (x86/x64 only for now) from Zeranoe and place them in your Jellyfin directory.
  4. (Optional) Use NSSM to configure JellyFin to run as a service

  5. Jellyfin is now available in the default directory (or the directory you chose). Assuming you kept the default directory, to start it from a Powershell window, run, &"$env:APPDATA\Jellyfin-Server\EmbyServer.exe". To start it from CMD, run, %APPDATA%\Jellyfin-Server\EmbyServer.exe