The Free Software Media System
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Go to file
Andrew Rabert 8602861109
Fix dotnet build
6 years ago
BDInfo Update to 3.5.2 and .net core 2.1 6 years ago
DvdLib Update to 3.5.2 and .net core 2.1 6 years ago
Emby.Dlna Update the DLNA profile links 6 years ago
Emby.Drawing Update to 3.5.2 and .net core 2.1 6 years ago
Emby.Drawing.ImageMagick * Fixed ImageMagick and XmlTv references 6 years ago
Emby.Drawing.Net Optimize images 6 years ago
Emby.Drawing.Skia Update to 3.5.2 and .net core 2.1 6 years ago
Emby.IsoMounting Move submodules into repo 6 years ago
Emby.Naming Update to 3.5.2 and .net core 2.1 6 years ago
Emby.Notifications Update to 3.5.2 and .net core 2.1 6 years ago
Emby.Photos Replace TagLib.Portable.dll with taglib-sharp submodule 6 years ago
Emby.Server.Implementations Updates all other emby.media links to repo page 6 years ago
Emby.XmlTv Move submodules into repo 6 years ago
MediaBrowser.Api Remove Emby.Server.Connect 6 years ago
MediaBrowser.LocalMetadata Update to 3.5.2 and .net core 2.1 6 years ago
MediaBrowser.Providers Reverts changes to forum URLs 6 years ago
MediaBrowser.Server.Mono Changed the App.Config to longer break both nix (in debug mode) and windows (in release mode) profiles. Changed the Path helper library to replace %ApplicationData% in Windows land with the Userdata\roaming folder, and with /var/lib in nix land 6 years ago
MediaBrowser.Tests Remove agreement and app links 6 years ago
MediaBrowser.WebDashboard Update to 3.5.2 and .net core 2.1 6 years ago
MediaBrowser.XbmcMetadata Reverts changes to forum URLs 6 years ago
Mono.Nat Update to 3.5.2 and .net core 2.1 6 years ago
Nuget update query objects 7 years ago
OpenSubtitlesHandler Update to 3.5.2 and .net core 2.1 6 years ago
RSSDP Update to 3.5.2 and .net core 2.1 6 years ago
SocketHttpListener Update to 3.5.2 and .net core 2.1 6 years ago
debian Remove obsolete jellyfin binary chmod 6 years ago
.dockerignore Add jellyfin Docker image 6 years ago
.gitignore Add JetBrains Rider files to gitignore, add taglib-sharp and ImageMagickSharp to the solution, as otherwise Rider can't build the solution. 6 years ago
.gitmodules Replace TagLib.Portable.dll with taglib-sharp submodule 6 years ago
Build-JellyFin.ps1 Added build script for Windows Builds 6 years ago
CODE_OF_CONDUCT.md Add code of conduct 6 years ago
CONTRIBUTING.md Correct some typos and wording 6 years ago
CONTRIBUTORS.md Clean up CONTRIBUTORS and differentiate us 6 years ago
Dockerfile Add jellyfin Docker image 6 years ago
LICENSE Remove incorrect .md suffix from LICENSE file 6 years ago
MediaBrowser.sln Fix dotnet build 6 years ago
MediaBrowser.sln.GhostDoc.xml replace file system calls with IFileSystem when needed 11 years ago
README.md Merge pull request #54 from LogicalPhallacy/windowsbuildinstructions 6 years ago
SharedVersion.cs Update to 3.5.2 and .net core 2.1 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 CONTRIBUTING.md.

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/

Debian/Ubuntu

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

  1. Install the dotnet-runtime-2.1 package via Microsoft's repositories.
  2. Import the GPG signing key (signed by Joshua):
    wget -O - https://repo.jellyfin.org/debian/jellyfin-signing-key-joshua.gpg.key | sudo apt-key add -
    
  3. Add an entry to /etc/apt/sources.list.d/jellyfin.list (note that Ubuntu will get buster but this should work fine):
    echo "deb https://repo.jellyfin.org/debian $( grep -Ewo -m1 --color=none 'jessie|stretch|buster' /etc/os-release || echo buster ) main" | sudo tee /etc/apt/sources.list.d/jellyfin.list
    
  4. Update APT repositories:
    sudo apt update
    
  5. Install Jellyfin:
    sudo apt install jellyfin
    

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.1 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.1 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 unsrestricted. If you want to optimize for your environment you can use the -WindowsVersion and -Architecture flags to do so, default is generic windows x64. The -InstallLocation flag lets you select where the compiled binaries go, 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 then place them in your emby 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