0
0
mirror of https://github.com/jellyfin/jellyfin.org.git synced 2025-05-10 12:35:27 +00:00
Files
felix920506 c5dfaa5024 make install instructions nicer (#1366)
* make windows instructions nicer

* make macOS instructions nicer

* create page for portable packages

* create page for automatic installers

* remove macos.md and windows.md

their contents have been moved to portable.md and automatic-installer.md

* move portable to manual and add some other installation methods

* community packages page

* remove linux.md

contents moved to other pages

* add link to freebsd package

* order of pages

* fix broken link

* fix links on index page

* order of pages again

* josh wording

* remove macOS delete config docs

* rework links

* create advanced install category

* separate automatic installer into OSes

* move synology to advanced

Every time someone complains about HWA on a NAS it's always Synology

* rework index links

* fix redirects

* reorder advanced category

* move truenas to advanced

* cleanup redirects page a bit
2025-04-19 01:08:14 +00:00

3.4 KiB

uid, title, description, sidebar_position
uid title description sidebar_position
installation-advanced-source Building from source Compile and run Jellyfin yourself. 4

As an alternative to using binary packages, you can build Jellyfin from source.

Jellyfin supports several methods of building for different platforms and instructions for all supported platforms are below.

All package builds begin with these two steps:

  1. Clone the repository.

    git clone https://github.com/jellyfin/jellyfin-packaging.git
    cd jellyfin-packaging
    
  2. Initialize the submodules.

    git submodule update --init
    

Container image

  1. Build the container image using Docker or Podman.

    docker build -t $USERNAME/jellyfin --file docker/Dockerfile .
    

    or

    podman build -t $USERNAME/jellyfin --file docker/Dockerfile .
    

    or use provided Python build script:

    ./build.py auto docker
    

    Replace "auto" with your own Jellyfin version tag if you want to.

  2. Run Jellyfin in a new container using Docker or Podman from the built container image.

    docker run -d -p 8096:8096 $USERNAME/jellyfin
    

    or

    podman run -d -p 8096:8096 $USERNAME/jellyfin
    

Linux or MacOS

  1. Use the included build script to perform builds.

    ./build --help
    ./build --list-platforms
    ./build <platform> all
    
  2. The resulting archives can be found at ../bin/<platform>.

:::note

This will very likely be split out into a separate repository at some point in the future.

:::

Windows

  1. Install dotnet SDK 8.0 from Microsoft's Website and install Git for Windows. You must be on Powershell 3 or higher.

  2. From Powershell set the execution policy to unrestricted.

    set-executionpolicy unrestricted
    
  3. If you are building a version of Jellyfin newer than 10.6.4, you will need to download the build script from a separate repository.

    git clone https://github.com/jellyfin/jellyfin-server-windows.git windows
    
  4. Run the Jellyfin build script.

    windows\build-jellyfin.ps1 -verbose
    
    • The -WindowsVersion and -Architecture flags can optimize the build for your current environment; 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 BtbN and place them in your Jellyfin directory.

    • The -InstallNSSM flag will automatically pull the stable nssm binary appropriate to your architecture (x86/x64 only for now) from NSSM's Website and place it in your Jellyfin directory.

  5. (Optional) Use NSSM to configure Jellyfin to run as a service.

  6. Jellyfin is now available in the default directory, or whichever directory you chose.

    • Start it from PowerShell.

      &"$env:APPDATA\Jellyfin-Server\jellyfin.exe"
      
    • Start it from CMD.

      %APPDATA%\Jellyfin-Server\jellyfin.exe
      

:::note

This will very likely be split out into a separate repository at some point in the future.

:::