diff --git a/.dockerignore b/.containerignore similarity index 100% rename from .dockerignore rename to .containerignore diff --git a/Dockerfile b/Containerfile similarity index 66% rename from Dockerfile rename to Containerfile index 52b5a19..e202458 100644 --- a/Dockerfile +++ b/Containerfile @@ -1,13 +1,7 @@ ARG DEBIAN_RELEASE=bullseye +ARG BASE_IMAGE=docker.io/bitnami/minideb:${DEBIAN_RELEASE} -FROM bitnami/minideb:${DEBIAN_RELEASE} AS builder - -WORKDIR /usr/src -COPY mediarepo-api ./mediarepo-api -COPY mediarepo-daemon ./mediarepo-daemon -COPY mediarepo-ui ./mediarepo-ui -COPY scripts ./scripts - +FROM ${BASE_IMAGE} AS base RUN apt-get update RUN apt-get install -y \ build-essential \ @@ -26,12 +20,24 @@ RUN apt-get install -y \ libwebkit2gtk-4.0-dev \ file \ python - RUN apt remove cmdtest -y - RUN curl https://sh.rustup.rs -sSf | bash -s -- -y ENV PATH="/root/.cargo/bin:${PATH}" +RUN rm -rf /var/lib/{apt,dpkg,cache,log}/ /var/cache +FROM base AS sources +WORKDIR /usr/src +COPY mediarepo-api ./mediarepo-api +COPY mediarepo-daemon ./mediarepo-daemon +COPY mediarepo-ui ./mediarepo-ui +COPY scripts ./scripts RUN python3 scripts/clean.py RUN python3 scripts/check.py --install -RUN python3 scripts/build.py all --verbose + +FROM sources AS build_daemon +WORKDIR /usr/src +RUN python3 scripts/build.py daemon --verbose + +FROM sources AS build_ui +WORKDIR /usr/src +RUN python3 scripts/build.py ui --verbose \ No newline at end of file diff --git a/README.md b/README.md index 405530e..1f73c46 100644 --- a/README.md +++ b/README.md @@ -99,7 +99,7 @@ After building the `out` directory contains all the built binaries and bundles. ### Test Builds -For test builds the `Dockerfile` in this repository can be used. This way no build dependencies need to be installed on the system. The dockerfile doesn't provide any artifacts and can only be used for validation. +For test builds the `Containerfile` in this repository can be used. This way no build dependencies need to be installed on the system. The Containerfile doesn't provide any artifacts and can only be used for validation. ## Usage and Further Information diff --git a/mediarepo-daemon/Cargo.lock b/mediarepo-daemon/Cargo.lock index 1088b3e..4d62242 100644 --- a/mediarepo-daemon/Cargo.lock +++ b/mediarepo-daemon/Cargo.lock @@ -1422,7 +1422,7 @@ dependencies = [ [[package]] name = "mediarepo-daemon" -version = "1.0.0" +version = "1.0.1" dependencies = [ "console-subscriber", "glob", diff --git a/mediarepo-daemon/Cargo.toml b/mediarepo-daemon/Cargo.toml index b72dfcc..0129339 100644 --- a/mediarepo-daemon/Cargo.toml +++ b/mediarepo-daemon/Cargo.toml @@ -4,7 +4,7 @@ default-members = ["mediarepo-core", "mediarepo-database", "mediarepo-logic", "m [package] name = "mediarepo-daemon" -version = "1.0.0" +version = "1.0.1" edition = "2018" license = "gpl-3" repository = "https://github.com/Trivernis/mediarepo-daemon" diff --git a/mediarepo-ui/package.json b/mediarepo-ui/package.json index 306b269..dc269a3 100644 --- a/mediarepo-ui/package.json +++ b/mediarepo-ui/package.json @@ -1,6 +1,6 @@ { "name": "mediarepo-ui", - "version": "1.0.0", + "version": "1.0.1", "scripts": { "ng": "ng", "start": "ng serve", @@ -45,7 +45,7 @@ "@angular-eslint/template-parser": "^13.2.0", "@angular/cli": "~13.3.2", "@angular/compiler-cli": "~13.3.2", - "@tauri-apps/cli": "^1.0.0-rc.7", + "@tauri-apps/cli": "^1.0.0-rc.8", "@types/file-saver": "^2.0.4", "@types/jasmine": "~4.0.2", "@types/node": "^17.0.23", diff --git a/mediarepo-ui/src-tauri/Cargo.lock b/mediarepo-ui/src-tauri/Cargo.lock index 8ab065c..21edc10 100644 --- a/mediarepo-ui/src-tauri/Cargo.lock +++ b/mediarepo-ui/src-tauri/Cargo.lock @@ -32,6 +32,21 @@ dependencies = [ "memchr", ] +[[package]] +name = "alloc-no-stdlib" +version = "2.0.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "35ef4730490ad1c4eae5c4325b2a95f521d023e5c885853ff7aca0a6a1631db3" + +[[package]] +name = "alloc-stdlib" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "697ed7edc0f1711de49ce108c541623a0af97c6c60b2f6e2b65229847ac843c2" +dependencies = [ + "alloc-no-stdlib", +] + [[package]] name = "ansi_term" version = "0.12.1" @@ -49,7 +64,7 @@ checksum = "4361135be9122e0870de935d7c439aef945b9f9ddd4199a553b5270b49c82a27" [[package]] name = "app" -version = "1.0.0" +version = "1.0.1" dependencies = [ "mediarepo-api", "serde", @@ -286,6 +301,27 @@ dependencies = [ "x25519-dalek", ] +[[package]] +name = "brotli" +version = "3.3.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a1a0b1dbcc8ae29329621f8d4f0d835787c1c38bb1401979b49d13b0b305ff68" +dependencies = [ + "alloc-no-stdlib", + "alloc-stdlib", + "brotli-decompressor", +] + +[[package]] +name = "brotli-decompressor" +version = "2.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "59ad2d4653bf5ca36ae797b1f4bb4dbddb60ce49ca4aed8a2ce4829f60425b80" +dependencies = [ + "alloc-no-stdlib", + "alloc-stdlib", +] + [[package]] name = "bstr" version = "0.2.17" @@ -3245,9 +3281,9 @@ dependencies = [ [[package]] name = "tauri-build" -version = "1.0.0-rc.4" +version = "1.0.0-rc.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d7e31905edc1b40f369beccbbfb30b2e44c2f2bb1ffc06a3778d844af4a81da8" +checksum = "ede6462a4692e2fd5030497ad576264dc90eea5fa337182492e77291d45fc78b" dependencies = [ "anyhow", "cargo_toml", @@ -3329,10 +3365,11 @@ dependencies = [ [[package]] name = "tauri-utils" -version = "1.0.0-rc.3" +version = "1.0.0-rc.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "21f11483d205c77d1ec398e80566485101696335983e69832cc6c41ab1e07266" +checksum = "a67fcf8fdd1340de4e75c01966fceab03057a8b0e97864eb39a21e420deed503" dependencies = [ + "brotli", "ctor", "glob", "heck 0.4.0", @@ -3349,7 +3386,6 @@ dependencies = [ "thiserror", "url", "walkdir", - "zstd", ] [[package]] diff --git a/mediarepo-ui/src-tauri/Cargo.toml b/mediarepo-ui/src-tauri/Cargo.toml index be9e925..d743588 100644 --- a/mediarepo-ui/src-tauri/Cargo.toml +++ b/mediarepo-ui/src-tauri/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "app" -version = "1.0.0" +version = "1.0.1" description = "The UI for the mediarepo media management tool" authors = ["you"] license = "" @@ -10,7 +10,7 @@ edition = "2018" build = "src/build.rs" [build-dependencies] -tauri-build = { version = "1.0.0-rc.4", features = [] } +tauri-build = { version = "1.0.0-rc.5", features = [] } [dependencies] serde_json = "1.0.79" diff --git a/mediarepo-ui/src-tauri/tauri.conf.json b/mediarepo-ui/src-tauri/tauri.conf.json index f0b6119..e01f045 100644 --- a/mediarepo-ui/src-tauri/tauri.conf.json +++ b/mediarepo-ui/src-tauri/tauri.conf.json @@ -1,7 +1,7 @@ { "package": { "productName": "mediarepo-ui", - "version": "1.0.0" + "version": "1.0.1" }, "build": { "distDir": "../dist/mediarepo-ui", diff --git a/mediarepo-ui/yarn.lock b/mediarepo-ui/yarn.lock index 4965f29..2fee44b 100644 --- a/mediarepo-ui/yarn.lock +++ b/mediarepo-ui/yarn.lock @@ -1681,7 +1681,7 @@ resolved "https://registry.yarnpkg.com/@tauri-apps/cli-win32-x64-msvc/-/cli-win32-x64-msvc-1.0.0-rc.8.tgz#bf58e24c42fccf098f78dc51e43f5cd7b7ff6842" integrity sha512-PiDr/iAKoL9nQSiWHkUSjRVHbvCJaa7Xj3P9UnGkjJQ9LGTr7AYZdLk4zISegF+/fZnOmaqUdZW9yWPPyJAzPw== -"@tauri-apps/cli@^1.0.0-rc.7": +"@tauri-apps/cli@^1.0.0-rc.8": version "1.0.0-rc.8" resolved "https://registry.yarnpkg.com/@tauri-apps/cli/-/cli-1.0.0-rc.8.tgz#ee8c9a587739853bd5f8a46a456a43ae594610f6" integrity sha512-FWpNwbgGMPgDb41oO7wdBhBsBE6FMG9yHKbtbrkJ/8d/hWcT6e3UUTfFL9cR2VGdp1pdWlul5+BKH0PTf8rB9w== diff --git a/scripts/check.py b/scripts/check.py index 340dde9..6155e80 100755 --- a/scripts/check.py +++ b/scripts/check.py @@ -4,7 +4,7 @@ import argparse import os -tauri_cli_version = '1.0.0-rc.5' +tauri_cli_version = '1.0.0-rc.8' windows = os.name == 'nt'