Skip to content

Commit 59b0ee0

Browse files
authored
Merge pull request #288 from midarrlabs/feature/v2.1.0
v2.1.0
2 parents 0ad792f + 7da8206 commit 59b0ee0

File tree

11 files changed

+67
-21
lines changed

11 files changed

+67
-21
lines changed

.github/workflows/beta.yml

+2-3
Original file line numberDiff line numberDiff line change
@@ -25,9 +25,8 @@ jobs:
2525
username: ${{ github.actor }}
2626
password: ${{ secrets.PAT }}
2727

28-
- name: Build tag push
29-
id: docker_build
30-
uses: docker/build-push-action@v2
28+
- name: Build tag
29+
uses: docker/build-push-action@v3
3130
with:
3231
platforms: linux/amd64,linux/arm64
3332
push: true

.github/workflows/tag.yml

+46
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
name: Tag
2+
3+
on:
4+
push:
5+
tags:
6+
- 'v2.1.0'
7+
8+
jobs:
9+
docker:
10+
runs-on: ubuntu-latest
11+
steps:
12+
- name: Set env
13+
run: echo "RELEASE_VERSION=${GITHUB_REF#refs/*/}" >> $GITHUB_ENV
14+
15+
- name: Set up QEMU
16+
uses: docker/setup-qemu-action@v2
17+
18+
- name: Set up Docker Buildx
19+
uses: docker/setup-buildx-action@v2
20+
21+
- name: Login to GitHub Container Registry
22+
uses: docker/login-action@v1
23+
with:
24+
registry: ghcr.io
25+
username: ${{ github.actor }}
26+
password: ${{ secrets.PAT }}
27+
28+
- name: Build tag
29+
uses: docker/build-push-action@v3
30+
with:
31+
platforms: linux/amd64,linux/arm64
32+
push: true
33+
tags: ghcr.io/midarrlabs/midarr-server:${{ env.RELEASE_VERSION }}
34+
build-args: |
35+
"MIX_ENV=prod"
36+
"SECRET_KEY_BASE=${{ secrets.SECRET_KEY_BASE }}"
37+
38+
- name: Build latest
39+
uses: docker/build-push-action@v3
40+
with:
41+
platforms: linux/amd64,linux/arm64
42+
push: true
43+
tags: ghcr.io/midarrlabs/midarr-server:latest
44+
build-args: |
45+
"MIX_ENV=prod"
46+
"SECRET_KEY_BASE=${{ secrets.SECRET_KEY_BASE }}"

README.md

+6-6
Original file line numberDiff line numberDiff line change
@@ -43,15 +43,15 @@ This is a lightweight (albeit companion) media server to the likes of Radarr and
4343
Your media is left untouched and unscathed as it is served through a simple (yet familiar) web interface that puts your media front and center for
4444
**you** and **your** users to enjoy.
4545

46-
While other media solutions look to re-index, re-fetch and re-double handle your media library, **Midarr** simply levarages your pre-existing
47-
services to delight and enchant **you** and **your** users' media experience.
46+
While other media solutions look to re-index, re-fetch and re-double handle your media library, **Midarr** simply leverages your pre-existing
47+
services to delight and enchant **your** media experience.
4848

4949
![Preview](priv/screenshots/ecosystem-v2.0.0.jpg)
5050

5151
### How is this lightweight?
5252

53-
* **No media indexing.** All the metadata needed is already on your server. **Midarr** never goes out looking for more, everything we need you already have.
54-
* **No media transcoding.** Nope, none whatsoever. Your media is served fresh off the metal.
53+
* **Direct streaming.** Your media is served fresh off the metal (*an experimental transcoder is available*).
54+
* **Smart caching.** Your metadata is retrieved fresh off the metal, smartly kept in sync with your integrations.
5555
* **No media editing.** We trust you already have it the way you like it, lets keep it that way.
5656

5757
### What does this do?
@@ -108,8 +108,8 @@ services:
108108
109109
### Integrations
110110
111-
* Supports Radarr - `v4.1`
112-
* Supports Sonarr - `v3.0`
111+
* Supports Radarr `v4.x`
112+
* Supports Sonarr `v3.x`
113113

114114
On server startup **Midarr** attempts to auto configure your integrations by:
115115

lib/media_server_web.ex

+1-1
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@ defmodule MediaServerWeb do
4545
def live_view do
4646
quote do
4747
use Phoenix.LiveView,
48-
layout: {MediaServerWeb.LayoutView, "live.html"}
48+
layout: {MediaServerWeb.LayoutView, :live}
4949

5050
unquote(view_helpers())
5151
end

lib/media_server_web/components/header_home.ex

+3-3
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,7 @@ defmodule MediaServerWeb.Components.HeaderHome do
7474
Play
7575
<% end %>
7676
77-
<%= live_redirect to: MediaServerWeb.Router.Helpers.segment_movie_show_path(@socket, :show, Enum.at(@movies, 0)["id"]), class: "inline-flex items-center justify-center px-4 py-2 border border-transparent rounded-md shadow-sm text-sm font-medium text-white bg-red-600 hover:bg-red-700 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-red-500" do %>
77+
<%= live_redirect to: MediaServerWeb.Router.Helpers.segment_movie_show_path(@socket, :show, Enum.at(@movies, 0)["id"]), class: "inline-flex items-center justify-center px-4 py-2 border border-transparent rounded-md shadow-sm text-sm font-medium text-gray-700 bg-white hover:bg-gray-200 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-slate-500" do %>
7878
<svg
7979
class="-ml-0.5 mr-2 h-6 w-6"
8080
xmlns="http://www.w3.org/2000/svg"
@@ -90,10 +90,10 @@ defmodule MediaServerWeb.Components.HeaderHome do
9090
d="M5.25 5.653c0-.856.917-1.398 1.667-.986l11.54 6.348a1.125 1.125 0 010 1.971l-11.54 6.347a1.125 1.125 0 01-1.667-.985V5.653z"
9191
/>
9292
</svg>
93-
Test
93+
Test
9494
<% end %>
9595
96-
<%= live_redirect to: MediaServerWeb.Router.Helpers.movies_show_path(@socket, :show, Enum.at(@movies, 0)["id"]), class: "inline-flex items-center justify-center px-4 py-2 border border-gray-300 shadow-sm text-sm font-medium rounded-md text-gray-700 bg-white hover:bg-gray-50 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-slate-500" do %>
96+
<%= live_redirect to: MediaServerWeb.Router.Helpers.movies_show_path(@socket, :show, Enum.at(@movies, 0)["id"]), class: "inline-flex items-center justify-center px-4 py-2 border border-gray-300 shadow-sm text-sm font-medium rounded-md text-gray-700 bg-white hover:bg-gray-200 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-slate-500" do %>
9797
<svg
9898
xmlns="http://www.w3.org/2000/svg"
9999
class="-ml-0.5 mr-2 h-6 w-6"

lib/media_server_web/components/nav_component.html.heex

+1-1
Original file line numberDiff line numberDiff line change
@@ -161,7 +161,7 @@
161161
clip-rule="evenodd"
162162
/>
163163
</svg>
164-
<.form :let={f} for={:search} id="search" phx-target={@myself} phx-submit="search">
164+
<.form :let={f} for={%{}} as={:search} id="search" phx-target={@myself} phx-submit="search">
165165
<%= text_input(f, :query,
166166
placeholder: "Search...",
167167
class:

lib/media_server_web/live/movies_live/show.html.heex

+4-3
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,7 @@
6464
Play
6565
<% end %>
6666

67-
<%= live_redirect to: Routes.segment_movie_show_path(@socket, :show, @movie["id"]), class: "inline-flex items-center justify-center px-4 py-2 border border-transparent rounded-md shadow-sm text-sm font-medium text-white bg-red-600 hover:bg-red-700 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-red-500" do %>
67+
<%= live_redirect to: Routes.segment_movie_show_path(@socket, :show, @movie["id"]), class: "inline-flex items-center justify-center px-4 py-2 border border-transparent rounded-md shadow-sm text-sm font-medium text-gray-700 bg-white hover:bg-gray-200 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-slate-500" do %>
6868
<svg
6969
class="-ml-0.5 mr-2 h-6 w-6"
7070
xmlns="http://www.w3.org/2000/svg"
@@ -86,7 +86,7 @@
8686
<button
8787
id="add-to-playlists"
8888
phx-click={JS.toggle(to: "#playlists")}
89-
class="inline-flex items-center justify-center px-4 py-2 border border-gray-300 shadow-sm text-sm font-medium rounded-md text-gray-700 bg-white hover:bg-gray-50 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-slate-500"
89+
class="inline-flex items-center justify-center px-4 py-2 border border-gray-300 shadow-sm text-sm font-medium rounded-md text-gray-700 bg-white hover:bg-gray-200 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-slate-500"
9090
>
9191
<svg
9292
class="-ml-0.5 mr-2 h-6 w-6"
@@ -124,7 +124,8 @@
124124
<.form
125125
:let={f}
126126
id="playlists-form"
127-
for={:playlists}
127+
for={%{}}
128+
as={:playlists}
128129
phx-change="save"
129130
class="divide-y divide-gray-200"
130131
>

lib/media_server_web/live/playlist_live/index.html.heex

+1-1
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,7 @@
6464
>
6565
<path stroke-linecap="round" stroke-linejoin="round" d="M12 4.5v15m7.5-7.5h-15" />
6666
</svg>
67-
<.form :let={f} id="playlists-form" for={:playlists} phx-submit="save">
67+
<.form :let={f} id="playlists-form" for={%{}} as={:playlists} phx-submit="save">
6868
<%= text_input(f, :name,
6969
placeholder: "New playlist",
7070
class:

lib/media_server_web/live/seasons_live/show.html.heex

+1-1
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@
5050
<span class="ml-3">Play</span>
5151
<% end %>
5252

53-
<%= live_redirect id: "test-#{ item["id"] }", to: Routes.segment_episode_show_path(@socket, :show, item["id"]), class: "flex items-center text-sm font-bold leading-6 text-red-700 hover:text-red-500" do %>
53+
<%= live_redirect id: "test-#{ item["id"] }", to: Routes.segment_episode_show_path(@socket, :show, item["id"]), class: "flex items-center text-sm font-bold leading-6 text-slate-700 hover:text-slate-500" do %>
5454
<svg
5555
aria-hidden="true"
5656
viewBox="0 0 10 10"

mix.exs

+1-1
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@ defmodule MediaServer.MixProject do
5757
{:cors_plug, "~> 3.0"},
5858
{:scrivener, "~> 2.0"},
5959
{:extitles, "~> 0.1.0"},
60-
{:exstream, "~> 0.15.0"}
60+
{:exstream, "~> 0.16.0"}
6161
]
6262
end
6363

mix.lock

+1-1
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@
2020
"exile": {:hex, :exile, "0.1.0", "082518fbb5104de8b7fc4b4040065e8cb5508524d844718068a6e6d00eb15d40", [:make, :mix], [{:elixir_make, "~> 0.6", [hex: :elixir_make, repo: "hexpm", optional: false]}], "hexpm", "d7dcfa2c9a4809af02bcf979d9ef017cca8db8bf041a7ec2cefb4f58eef9e708"},
2121
"expo": {:hex, :expo, "0.4.0", "bbe4bf455e2eb2ebd2f1e7d83530ce50fb9990eb88fc47855c515bfdf1c6626f", [:mix], [], "hexpm", "a8ed1683ec8b7c7fa53fd7a41b2c6935f539168a6bb0616d7fd6b58a36f3abf2"},
2222
"exqlite": {:hex, :exqlite, "0.13.0", "fd92c307053490573c437dd50914d435b04129d014d913e97acf67681f93b6b0", [:make, :mix], [{:db_connection, "~> 2.1", [hex: :db_connection, repo: "hexpm", optional: false]}, {:elixir_make, "~> 0.6", [hex: :elixir_make, repo: "hexpm", optional: false]}, {:table, "~> 0.1.0", [hex: :table, repo: "hexpm", optional: true]}], "hexpm", "e78038cd315e695f4ea5823a9c0a7ab271549d4f3010962bd76219fbd9f79201"},
23-
"exstream": {:hex, :exstream, "0.14.0", "7988c0ff07b6bcb14d36ff89e5bff594b04608d7e9a8ee39c06f4078bda260ca", [:mix], [{:exile, "~> 0.1.0", [hex: :exile, repo: "hexpm", optional: false]}, {:extaima, "~> 0.3.0", [hex: :extaima, repo: "hexpm", optional: false]}, {:jason, "~> 1.4", [hex: :jason, repo: "hexpm", optional: false]}, {:plug, "~> 1.13", [hex: :plug, repo: "hexpm", optional: false]}, {:plug_cowboy, "~> 2.0", [hex: :plug_cowboy, repo: "hexpm", optional: false]}], "hexpm", "ac42bdd648508ede8acc3236c4506941d9c8e2807ecc0ff63510e0297a1cfe4b"},
23+
"exstream": {:hex, :exstream, "0.16.0", "9c53dc1ea70e93ce3a8c21ebd85e826ca849b680f2f5568ee81f9e3c6608ba64", [:mix], [{:exile, "~> 0.1.0", [hex: :exile, repo: "hexpm", optional: false]}, {:extaima, "~> 0.3.0", [hex: :extaima, repo: "hexpm", optional: false]}, {:jason, "~> 1.4", [hex: :jason, repo: "hexpm", optional: false]}, {:plug, "~> 1.13", [hex: :plug, repo: "hexpm", optional: false]}, {:plug_cowboy, "~> 2.0", [hex: :plug_cowboy, repo: "hexpm", optional: false]}], "hexpm", "38463be7899a1e02676d381408f5894fb86cd9dac3ffef6c9d3ae651c9b471b6"},
2424
"extaima": {:hex, :extaima, "0.3.0", "388e17aa8f67e27bb7bca2182a8942eadcd414e6e6f59b43e2e0024b86361d06", [:mix], [], "hexpm", "b77c20980ed6cd3ae360bbbe787559bae0b1cf62e76b9509c3bca0f835a02668"},
2525
"extitles": {:hex, :extitles, "0.1.0", "bc3566f7feae87d0b8a2dddb872968884e924e1b1fbc83386f041162e6f8782a", [:mix], [], "hexpm", "2c5c1376ffc0625cd3fa8f961e857465acecc390b4239ddcc718dacde5c5accc"},
2626
"file_system": {:hex, :file_system, "0.2.10", "fb082005a9cd1711c05b5248710f8826b02d7d1784e7c3451f9c1231d4fc162d", [:mix], [], "hexpm", "41195edbfb562a593726eda3b3e8b103a309b733ad25f3d642ba49696bf715dc"},

0 commit comments

Comments
 (0)