From 5b55af981688f7b7eb7ddfef007e3dbc8778bb68 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 11 Mar 2024 16:49:14 +0000 Subject: [PATCH 1/8] Bump softprops/action-gh-release from 1 to 2 Bumps [softprops/action-gh-release](https://github.com/softprops/action-gh-release) from 1 to 2. - [Release notes](https://github.com/softprops/action-gh-release/releases) - [Changelog](https://github.com/softprops/action-gh-release/blob/master/CHANGELOG.md) - [Commits](https://github.com/softprops/action-gh-release/compare/v1...v2) --- updated-dependencies: - dependency-name: softprops/action-gh-release dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- .github/workflows/BuildPublishPipeline.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/BuildPublishPipeline.yml b/.github/workflows/BuildPublishPipeline.yml index 846b063..88d2b19 100644 --- a/.github/workflows/BuildPublishPipeline.yml +++ b/.github/workflows/BuildPublishPipeline.yml @@ -174,7 +174,7 @@ jobs: # Create GitHub release # https://github.com/marketplace/actions/gh-release - name: Create GitHub release - uses: softprops/action-gh-release@v1 + uses: softprops/action-gh-release@v2 with: generate_release_notes: true tag_name: ${{ needs.getversion.outputs.SemVer2 }} From 7a8f82de2b2f501fd764116d68a3f4a5ecf8d551 Mon Sep 17 00:00:00 2001 From: Pieter Viljoen Date: Wed, 13 Mar 2024 01:49:13 +0000 Subject: [PATCH 2/8] Restructure layout --- README.md | 273 +++++++++++++++++++++++++++++++++++------------------- 1 file changed, 176 insertions(+), 97 deletions(-) diff --git a/README.md b/README.md index 686d818..dcd561e 100644 --- a/README.md +++ b/README.md @@ -1,125 +1,131 @@ # Docker Projects for Nx Witness and Nx Meta and DW Spectrum -This is a project to build docker containers for [Network Optix Nx Witness VMS](https://www.networkoptix.com/nx-witness/), and [Network Optix Nx Meta VMS](https://meta.nxvms.com/), the developer test and preview version of Nx Witness, and [Digital Watchdog DW Spectrum IPVMS](https://digital-watchdog.com/productdetail/DW-Spectrum-IPVMS/), the US licensed and OEM branded version of Nx Witness. +This is a project to build docker containers for [Network Optix Nx Witness VMS][nxwitness], and [Network Optix Nx Meta VMS][nxmeta], the developer test and preview version of Nx Witness, and [Digital Watchdog DW Spectrum IPVMS][dwwatchdog], the US licensed and OEM branded version of Nx Witness. ## License -Licensed under the [MIT License](./LICENSE). -![GitHub License](https://img.shields.io/github/license/ptr727/NxWitness) +Licensed under the [MIT License][license]. +![License Shield][license_shield] ## Build Status -[Code and Pipeline is on GitHub](https://github.com/ptr727/NxWitness): -[![GitHub Last Commit](https://img.shields.io/github/last-commit/ptr727/NxWitness?logo=github)](https://github.com/ptr727/NxWitness/commits/main) -[![GitHub Workflow Status](https://img.shields.io/github/actions/workflow/status/ptr727/NxWitness/BuildPublishPipeline.yml?branch=main&logo=github)](https://github.com/ptr727/NxWitness/actions) -[![GitHub Actions Last Build](https://byob.yarr.is/ptr727/NxWitness/lastbuild)](https://github.com/ptr727/NxWitness/actions) +[![Last Commit][last_commit_shield]][repo] +[![Workflow Status][workflow_status_shield]][actions] +[![Last Build][last_build_shield]][actions] ## Release Notes - Version 2.1: - Added ARM64 images per user [request](https://github.com/ptr727/NxWitness/issues/131). - Note that testing was limited to verifying that the containers run on a Raspberry Pi 5. - - Updated build scripts to use `docker compose` and `docker buildx` included in the Docker / Moby v25+ [release](https://docs.docker.com/engine/install/). - - Updated CreateMatrix tooling to use newest version for `latest` tag when multiple versions are available. + - Updated build scripts to use `docker compose` (vs. `docker-compose`) and `docker buildx` (vs. `docker build`) per current Docker/Moby v25+ [release](https://docs.docker.com/engine/install/). + - Updated `CreateMatrix` tooling to use the newest version for the `latest` tag when multiple versions are available. - Version 2.0: - Added a build release [version](./version.json), this version is independent of Nx release versions, and only identifies the version of the build environment, and is used in the image label. - - Nx released v5.1 across all product brands, v5.1 [supports](https://support.networkoptix.com/hc/en-us/articles/205313168-Nx-Witness-Operating-System-Support) Ubuntu Jammy 22.04 LTS, and all base images have been updated to Jammy. + - Nx released v5.1 across all product brands, v5.1 [supports][nx_os_support] Ubuntu Jammy 22.04 LTS, and all base images have been updated to Jammy. - Due to the Jammy dependency versions older than v5.1 are no longer being built. - Build scripts removed support for old v4 variants. - Added a link from `/root/.config/nx_ini` to `/config/ini` for additional INI configuration files. ## Releases -Docker container images are published on [Docker Hub](https://hub.docker.com/u/ptr727). -Images are tagged using `latest`, `stable`, and the specific version number. -The `latest` tag uses the latest release version, `latest` may be the same as `rc` or `beta`. -The `stable` tag uses the stable release version, `stable` may be the same as `latest`. -The `develop`, `rc` or `beta` tags are assigned to test or pre-release versions, they are not generated with every release, use with care and only as needed. +Images are published on [Docker Hub][hub]: -E.g. +- [NxWitness][hub_nxwitness]: `docker pull docker.io/ptr727/nxwitness` +- [NxWitness-LSIO][hub_nxwitness-lsio]: `docker pull docker.io/ptr727/nxwitness-lsio` +- [NxMeta][hub_nxmeta]: `docker pull docker.io/ptr727/nxmeta` +- [NxMeta-LSIO][hub_nxmeta-lsio]: `docker pull docker.io/ptr727/nxmeta-lsio` +- [DWSpectrum][hub_dwspectrum]: `docker pull docker.io/ptr727/dwspectrum` +- [DWSpectrum-LSIO][hub_dwspectrum-lsio]: `docker pull docker.io/ptr727/dwspectrum-lsio` -```console -# Latest NxMeta-LSIO -docker pull docker.io/ptr727/nxmeta-lsio:latest -# Stable DWSpectrum -docker pull docker.io/ptr727/dwspectrum:stable -# 5.0.0.35136 NxWitness-LSIO -docker pull docker.io/ptr727/nxwitness-lsio:5.0.0.35136 -``` +Images are tagged as follows: + +- `latest`: Latest published version, `docker pull docker.io/ptr727/nxmeta:latest`. +- `stable`: Latest released version, e.g. `docker pull docker.io/ptr727/nxmeta:stable`. +- `rc`: Latest RC version, e.g. `docker pull docker.io/ptr727/nxmeta:rc`. +- `beta`: Latest Beta version, e.g. `docker pull docker.io/ptr727/nxmeta:beta` +- `develop`: Builds created from the develop branch, e.g. `docker pull docker.io/ptr727/nxmeta:develop`. +- `[version]`: Release version number, e.g. `docker pull docker.io/ptr727/nxmeta:5.2.2.37996`. + +Notes: + +- `latest` and `stable` may be the same version if all builds are released builds. +- `rc` and `beta` tags are only built when RC and Beta builds are published, and may be older than current `latest` or `stable` builds. +- See [Build Process](#build-process) for determination of the "released" status of a build. -The images are updated weekly, picking up the latest upstream updates, and newly released product versions. +The images are updated weekly, picking up the latest upstream Ubuntu updates and newly released Nx product versions. See the [Build Process](#build-process) section for more details on how versions and builds are managed. -[NxWitness](https://hub.docker.com/r/ptr727/nxwitness) -[![NxWitness Stable](https://img.shields.io/docker/v/ptr727/nxwitness/stable?label=stable&logo=docker)](https://hub.docker.com/r/ptr727/nxwitness) -[![NxWitness Latest](https://img.shields.io/docker/v/ptr727/nxwitness/latest?label=latest&logo=docker)](https://hub.docker.com/r/ptr727/nxwitness) -[![NxWitness RC](https://img.shields.io/docker/v/ptr727/nxwitness/rc?label=rc&logo=docker)](https://hub.docker.com/r/ptr727/nxwitness) -[![NxWitness Beta](https://img.shields.io/docker/v/ptr727/nxwitness/beta?label=beta&logo=docker)](https://hub.docker.com/r/ptr727/nxwitness) - -[NxWitness-LSIO](https://hub.docker.com/r/ptr727/nxwitness-lsio) -[![NxWitness-LSIO Stable](https://img.shields.io/docker/v/ptr727/nxwitness-lsio/stable?label=stable&logo=docker)](https://hub.docker.com/r/ptr727/nxwitness-lsio) -[![NxWitness-LSIO Latest](https://img.shields.io/docker/v/ptr727/nxwitness-lsio/latest?label=latest&logo=docker)](https://hub.docker.com/r/ptr727/nxwitness-lsio) -[![NxWitness-LSIO RC](https://img.shields.io/docker/v/ptr727/nxwitness-lsio/rc?label=rc&logo=docker)](https://hub.docker.com/r/ptr727/nxwitness-lsio) -[![NxWitness-LSIO Beta](https://img.shields.io/docker/v/ptr727/nxwitness-lsio/beta?label=beta&logo=docker)](https://hub.docker.com/r/ptr727/nxwitness-lsio) - -[NxMeta](https://hub.docker.com/r/ptr727/nxmeta) -[![NxMeta Stable](https://img.shields.io/docker/v/ptr727/nxmeta/stable?label=stable&logo=docker)](https://hub.docker.com/r/ptr727/nxmeta) -[![NxMeta Latest](https://img.shields.io/docker/v/ptr727/nxmeta/latest?label=latest&logo=docker)](https://hub.docker.com/r/ptr727/nxmeta) -[![NxMeta RC](https://img.shields.io/docker/v/ptr727/nxmeta/rc?label=rc&logo=docker)](https://hub.docker.com/r/ptr727/nxmeta) -[![NxMeta Beta](https://img.shields.io/docker/v/ptr727/nxmeta/beta?label=beta&logo=docker)](https://hub.docker.com/r/ptr727/nxmeta) - -[NxMeta-LSIO](https://hub.docker.com/r/ptr727/nxmeta-lsio) -[![NxMeta-LSIO Stable](https://img.shields.io/docker/v/ptr727/nxmeta-lsio/stable?label=stable&logo=docker)](https://hub.docker.com/r/ptr727/nxmeta-lsio) -[![NxMeta-LSIO Latest](https://img.shields.io/docker/v/ptr727/nxmeta-lsio/latest?label=latest&logo=docker)](https://hub.docker.com/r/ptr727/nxmeta-lsio) -[![NxMeta-LSIO RC](https://img.shields.io/docker/v/ptr727/nxmeta-lsio/rc?label=rc&logo=docker)](https://hub.docker.com/r/ptr727/nxmeta-lsio) -[![NxMeta-LSIO Beta](https://img.shields.io/docker/v/ptr727/nxmeta-lsio/beta?label=beta&logo=docker)](https://hub.docker.com/r/ptr727/nxmeta-lsio) - -[DWSpectrum](https://hub.docker.com/r/ptr727/dwspectrum) -[![DWSpectrum Stable](https://img.shields.io/docker/v/ptr727/dwspectrum/stable?label=stable&logo=docker)](https://hub.docker.com/r/ptr727/dwspectrum) -[![DWSpectrum Latest](https://img.shields.io/docker/v/ptr727/dwspectrum/latest?label=latest&logo=docker)](https://hub.docker.com/r/ptr727/dwspectrum) -[![DWSpectrum RC](https://img.shields.io/docker/v/ptr727/dwspectrum/rc?label=rc&logo=docker)](https://hub.docker.com/r/ptr727/dwspectrum) -[![DWSpectrum Beta](https://img.shields.io/docker/v/ptr727/dwspectrum/beta?label=beta&logo=docker)](https://hub.docker.com/r/ptr727/dwspectrum) - -[DWSpectrum-LSIO](https://hub.docker.com/r/ptr727/dwspectrum-lsio) -[![DWSpectrum-LSIO Stable](https://img.shields.io/docker/v/ptr727/dwspectrum-lsio/stable?label=stable&logo=docker)](https://hub.docker.com/r/ptr727/dwspectrum-lsio) -[![DWSpectrum-LSIO Latest](https://img.shields.io/docker/v/ptr727/dwspectrum-lsio/latest?label=latest&logo=docker)](https://hub.docker.com/r/ptr727/dwspectrum-lsio) -[![DWSpectrum-LSIO RC](https://img.shields.io/docker/v/ptr727/dwspectrum-lsio/rc?label=rc&logo=docker)](https://hub.docker.com/r/ptr727/dwspectrum-lsio) -[![DWSpectrum-LSIO Beta](https://img.shields.io/docker/v/ptr727/dwspectrum-lsio/beta?label=beta&logo=docker)](https://hub.docker.com/r/ptr727/dwspectrum-lsio) +[NxWitness][hub_nxwitness]: +[![NxWitness Stable][hub_nxwitness_stable_shield]][hub_nxwitness] +[![NxWitness Latest][hub_nxwitness_latest_shield]][hub_nxwitness] +[![NxWitness RC][hub_nxwitness_rc_shield]][hub_nxwitness] +[![NxWitness Beta][hub_nxwitness_beta_shield]][hub_nxwitness] + +[NxWitness-LSIO][hub_nxwitness-lsio]: +[![NxWitness-LSIO Stable][hub_nxwitness-lsio_stable_shield]][hub_nxwitness-lsio] +[![NxWitness-LSIO Latest][hub_nxwitness-lsio_latest_shield]][hub_nxwitness-lsio] +[![NxWitness-LSIO RC][hub_nxwitness-lsio_rc_shield]][hub_nxwitness-lsio] +[![NxWitness-LSIO Beta][hub_nxwitness-lsio_beta_shield]][hub_nxwitness-lsio] + +[NxMeta][hub_nxmeta]: +[![NxMeta Stable][hub_nxmeta_stable_shield]][hub_nxmeta] +[![NxMeta Latest][hub_nxmeta_latest_shield]][hub_nxmeta] +[![NxMeta RC][hub_nxmeta_rc_shield]][hub_nxmeta] +[![NxMeta Beta][hub_nxmeta_beta_shield]][hub_nxmeta] + +[NxMeta-LSIO][hub_nxmeta-lsio]: +[![NxMeta-LSIO Stable][hub_nxmeta-lsio_stable_shield]][hub_nxmeta-lsio] +[![NxMeta-LSIO Latest][hub_nxmeta-lsio_latest_shield]][hub_nxmeta-lsio] +[![NxMeta-LSIO RC][hub_nxmeta-lsio_rc_shield]][hub_nxmeta-lsio] +[![NxMeta-LSIO Beta][hub_nxmeta-lsio_beta_shield]][hub_nxmeta-lsio] + +[DWSpectrum][hub_dwspectrum]: +[![DWSpectrum Stable][hub_dwspectrum_stable_shield]][hub_dwspectrum] +[![DWSpectrum Latest][hub_dwspectrum_latest_shield]][hub_dwspectrum] +[![DWSpectrum RC][hub_dwspectrum_rc_shield]][hub_dwspectrum] +[![DWSpectrum Beta][hub_dwspectrum_beta_shield]][hub_dwspectrum] + +[DWSpectrum-LSIO][hub_dwspectrum-lsio]: +[![DWSpectrum-LSIO Stable][hub_dwspectrum-lsio_stable_shield]][hub_dwspectrum-lsio] +[![DWSpectrum-LSIO Latest][hub_dwspectrum-lsio_latest_shield]][hub_dwspectrum-lsio] +[![DWSpectrum-LSIO RC][hub_dwspectrum-lsio_rc_shield]][hub_dwspectrum-lsio] +[![DWSpectrum-LSIO Beta][hub_dwspectrum-lsio_beta_shield]][hub_dwspectrum-lsio] ## Overview ### Introduction -I ran DW Spectrum in my home lab on an Ubuntu Virtual Machine, and was looking for a way to run it in Docker. At the time Network Optix provided no support for Docker, but I did find the [The Home Repot NxWitness](https://github.com/thehomerepot/nxwitness) project, that inspired me to create this project. +I ran DW Spectrum in my home lab on an Ubuntu Virtual Machine, and was looking for a way to run it in Docker. At the time Network Optix provided no support for Docker, but I did find the [The Home Repot NxWitness][thehomerepo] project, that inspired me to create this project. I started with individual repositories for Nx Witness, Nx Meta, and DW Spectrum, but that soon became cumbersome with lots of duplication, and I combined all product flavors into this one project. -Today Network Optix supports [Docker](https://support.networkoptix.com/hc/en-us/articles/360037973573-Docker), and they publish [build scripts](https://github.com/networkoptix/nxvms-docker), but they do not publish container images. +Today Network Optix supports [Docker][nx_docker], and they publish [build scripts][nx_github_docker], but they do not publish container images. ### Products The project supports three product variants: -- [Network Optix Nx Witness VMS](https://www.networkoptix.com/nx-witness/). -- [Network Optix Nx Meta VMS](https://meta.nxvms.com/), the developer test and preview version of Nx Witness. -- [Digital Watchdog DW Spectrum IPVMS](https://digital-watchdog.com/productdetail/DW-Spectrum-IPVMS/), the US licensed and OEM branded version of Nx Witness. +- [Network Optix Nx Witness VMS][nxwitness]. +- [Network Optix Nx Meta VMS][nxmeta], the developer test and preview version of Nx Witness. +- [Digital Watchdog DW Spectrum IPVMS][dwwatchdog], the US licensed and OEM branded version of Nx Witness. ### Base Images The project creates two variants of each product using different base images: -- [Ubuntu](https://ubuntu.com/) using [ubuntu:jammy](https://hub.docker.com/_/ubuntu) base image. -- [LinuxServer](https://www.linuxserver.io/) using [lsiobase/ubuntu:jammy](https://hub.docker.com/r/lsiobase/ubuntu) base image. +- [Ubuntu][ubuntu] using [ubuntu:jammy][ubuntu_docker] base image. +- [LinuxServer][lsio] using [lsiobase/ubuntu:jammy][ubuntu_lsio_docker] base image. -Note that smaller base images like [Alpine](https://alpinelinux.org/) are not [supported](https://support.networkoptix.com/hc/en-us/articles/205313168-Nx-Witness-Operating-System-Support) by the mediaserver. +Note that smaller base images like [Alpine][alpine] are not [supported][nx_os_support] by the mediaserver. ### LinuxServer -The [LinuxServer (LSIO)](https://www.linuxserver.io/) base images provide valuable container functionality: +The [LinuxServer (LSIO)][lsio] base images provide valuable container functionality: -- The LSIO images are based on [s6-overlay](https://github.com/just-containers/s6-overlay), are updated weekly, and LSIO [produces](https://fleet.linuxserver.io/) containers for many popular open source applications. -- LSIO allows us to [specify](https://docs.linuxserver.io/general/understanding-puid-and-pgid) the user account to use when running the mediaserver, while still running the root-tool as root (required for license enforcement). -- Running as non-root is a [best practice](https://docs.docker.com/develop/develop-images/dockerfile_best-practices/#user), and required if we need user specific permissions when accessing mapped volumes. -- The [nxvms-docker](https://github.com/networkoptix/nxvms-docker/blob/master/docker-compose.yaml) project takes a different approach running a compose stack that runs the mediaserver in one instance under the `${COMPANY_NAME}` account, and the root-tool in a second instance under the `root` account, using a shared `/tmp` volume for socket IPC between the mediaserver and root-tool, but the user account `${COMPANY_NAME}` does not readily map to a user on the host system. +- The LSIO images are based on [s6-overlay][s6], are updated weekly, and LSIO [produces][lsio_fleet] containers for many popular open source applications. +- LSIO allows us to [specify][lsio_puid] the user account to use when running the mediaserver, while still running the `root-tool` as `root` (required for license enforcement). +- Running as non-root is a [best practice][docker_nonroot], and required if we need user specific permissions when accessing mapped volumes. +- The [nxvms-docker][nx_github_compose] project takes a different approach running a compose stack that runs the mediaserver in one instance under the `${COMPANY_NAME}` account, and the root-tool in a second instance under the `root` account, using a shared `/tmp` volume for socket IPC between the mediaserver and root-tool, but the user account `${COMPANY_NAME}` does not readily map to a user on the host system. ## Configuration @@ -141,7 +147,7 @@ The LSIO images [re-link](./LSIO/etc/s6-overlay/s6-rc.d/init-nx-relocate/run) va ### Non-LSIO Volumes -The non-LSIO images must be mapped directly to the installed paths, refer to the [nxvms-docker](https://github.com/networkoptix/nxvms-docker#volumes-description) page for details. +The non-LSIO images must be mapped directly to the installed paths, refer to the [nxvms-docker][nx_github_volumes] page for details. - `/opt/${COMPANY_NAME}/mediaserver/etc` : Configuration. - `/home/${COMPANY_NAME}/.config/nx_ini` : Additional configuration. @@ -158,11 +164,11 @@ The non-LSIO images must be mapped directly to the installed paths, refer to the - `PGID` : Group Id, LSIO only, optional. - `TZ` : Timezone, e.g. `America/Los_Angeles`. -See [LSIO docs](https://docs.linuxserver.io/general/understanding-puid-and-pgid) for usage of `PUID` and `PGID`, that allows the mediaserver to run under a system user account and the root-tool to run as root. +See [LSIO docs][lsio_puid] for usage of `PUID` and `PGID` that allow the mediaserver to run under a user account and the root-tool to run as root. ### Network Mode -Any network mode can be used, but due to the hardware bound licensing, `host` mode is [recommended](https://github.com/networkoptix/nxvms-docker#networking). +Any network mode can be used, but due to the hardware bound licensing, `host` mode is [recommended][nx_github_networking]. ## Examples @@ -235,7 +241,7 @@ services: - Nx Witness: - [Downloads API](https://nxvms.com/api/utils/downloads) - - [Releases API](https://updates.vmsproxy.com/default/releases.json) + - [Releases API][nxwitness_releases] - [Downloads](https://nxvms.com/download/linux) - [Beta Downloads](https://beta.networkoptix.com/beta-builds/default) - [Release Notes](https://www.networkoptix.com/all-nx-witness-release-notes) @@ -267,7 +273,9 @@ Build overview: - Docker does [not support](https://github.com/moby/moby/issues/735) a native `include` directive, instead the [M4 macro processor](https://www.gnu.org/software/m4/) is used to assemble common snippets. - The `Dockerfile` [downloads](./Make/Download.sh) and installs the mediaserver installer at build time using environment variables for the URLs. - [`CreateMatrix`](./CreateMatrix/) is a custom app used to update available product versions and download URLs. -- [`Version.json`](./Make/Version.json) is updated using the mediaserver [release API](https://updates.vmsproxy.com/default/releases.json), using the same logic as in the [Nx Open](https://github.com/networkoptix/nx_open/blob/master/vms/libs/nx_vms_update/src/nx/vms/update/releases_info.cpp) desktop client. +- [`Version.json`](./Make/Version.json) is updated using the mediaserver [Releases JSON API][nxwitness_releases] and [Packages API](https://updates.networkoptix.com/default/38363/packages.json). +- The logic follows the same pattern as used by the [Nx Open](https://github.com/networkoptix/nx_open/blob/master/vms/libs/nx_vms_update/src/nx/vms/update/releases_info.cpp) desktop client logic. +- The "released" status of a build follows the same method as Nx uses in [`isBuildPublished()`][isbuildpublished] where `release_date` and `release_delivery_days` from the [Releases JSON API][nxwitness_releases] must be greater than `0` - [`Matrix.json`](./Make/Matrix.json) is created from the `Version.json` file and is used during pipeline builds using a [Matrix](https://docs.github.com/en/actions/using-jobs/using-a-matrix-for-your-jobs) strategy. - Automated builds are done using [GitHub Actions](https://docs.github.com/en/actions) and the [`BuildPublishPipeline.yml`](./.github/workflows/BuildPublishPipeline.yml) pipeline. - Version history is maintained and used by `CreateMatrix` such that generic tags, e.g. `latest`, will never result in a lesser version number, i.e. break-fix-forward only, see [Issue #62](https://github.com/ptr727/NxWitness/issues/62) for details on Nx re-publishing `release` builds using an older version breaking already upgraded systems. @@ -279,7 +287,7 @@ Local testing: - `make build`: Build the `Dockerfile`'s using `docker buildx build`. - `make up`: Launch a docker compose stack [`Test.yaml`](./Make/Test.yml) to run all product variants. - Ctrl-Click on the links to launch the web UI for each of the product variants. -- Run `make clean` to Shutdown the compose stack and cleanup images. +- Run `make clean` to shutdown the compose stack and cleanup images. ## Known Issues @@ -287,55 +295,55 @@ Local testing: - Camera recording license keys are activated and bound to hardware attributes of the host server collected by the `root-tool` that is required to run as `root`. - Requiring the `root-tool` to run as root overly complicates running the `mediaserver` as a non-root user, and requires the container to run using `host` networking to not break the hardware license checks. - Docker containers are supposed to be portable, and moving containers between hosts will break license activation. - - Nx Fix: Associate licenses with the [Cloud Account](https://www.networkoptix.com/nx-witness/nx-witness-cloud/) not the local hardware. + - Nx to fix: Associate licenses with the [Cloud Account][nx_cloud] not the local hardware. - Storage Management: - The mediaserver attempts to automatically decide what storage to use. - - Filesystem types are filtered out if not on the [supported list](https://github.com/networkoptix/nxvms-docker#notes-about-storage). + - Filesystem types are filtered out if not on the [supported list][nx_github_storage]. - Mounted volumes are ignored if backed by the same physical storage, even if logically separate. - Unwanted `Nx MetaVMS Media` directories are created on any discoverable writable storage. - - Nx Fix: Eliminate the elaborate filesystem filter logic and use only the admin specified storage locations. + - Nx to fix: Eliminate the elaborate filesystem filter logic and use only the admin specified storage locations. - Configuration Files: - `.conf` configuration files are located in a static `mediaserver/etc` location while `.ini` configuration files are in a user-account dependent location, e.g. `/home/networkoptix/.config/nx_ini` or `/root/.config/nx_ini`. - There is no value in having a server use per-user configuration directories, and it is inconsistent to mix configuration file locations. - - Nx Fix: Store all configuration files in `mediaserver/etc`. + - Nx to fix: Store all configuration files in `mediaserver/etc`. - External Plugins: - - Custom or [Marketplace](https://www.networkoptix.com/nx-meta/nx-integrations-marketplace/) plugins are installed in the `mediaserver/bin/plugins` directory. + - Custom or [Marketplace][nx_marketplace] plugins are installed in the `mediaserver/bin/plugins` directory. - The `mediaserver/bin/plugins` directory is already pre-populated with Nx installed plugins. - It is not possible to use external plugins from a mounted volume as the directory is already in-use. - - Nx Fix: Load plugins from `mediaserver/var/plugins` or from sub-directories mounted below `mediaserver/bin/plugins`, e.g. `mediaserver/bin/plugins/external` + - Nx to fix: Load plugins from `mediaserver/var/plugins` or from sub-directories mounted below `mediaserver/bin/plugins`, e.g. `mediaserver/bin/plugins/external` - Lifetime Upgrades: - - Nx is a cloud product, free to view, free upgrades, comes with ongoing costs of hosting, maintenance, and support, it is [unfeasible](https://www.crunchbase.com/organization/network-optix) to sustain a business with ongoing costs using perpetual one-off licenses. - - My personal experience with [Digital Watchdog](https://digital-watchdog.com/) and their [Lifetime Upgrades and No Annual Agreements](https://dwspectrum.com/upgrades/) is an inflexible policy of three activations per license and you have to buy a new license, thus the "license lifetime" is a multiplier of the "hardware lifetime". - - Nx Fix: Yearly camera license renewals covering the cost of support and upgrades. + - Nx is a cloud product, free to view, free upgrades, comes with ongoing costs of hosting, maintenance, and support, it is [unfeasible][nx_crunchbase] to sustain a business with ongoing costs using perpetual one-off licenses. + - My personal experience with [Digital Watchdog][digitalwatchdog] and their [Lifetime Upgrades and No Annual Agreements][dw_upgrades] is an inflexible policy of three activations per license and you have to buy a new license, thus the "license lifetime" is a multiplier of the "hardware lifetime". + - Nx to fix: Yearly camera license renewals covering the cost of support and upgrades. - Archiving: - Nx makes no distinction between recording and archiving storage, archive is basically just a recording mirror without any capacity or retention benefit. - Recording storage is typically high speed low latency high cost low capacity SSD/NVMe arrays, while archival playback storage is very high capacity low cost magnetic media arrays. - - Nx Fix: Implement something akin to archiving in [Milestone XProtect VMS](https://doc.milestonesys.com/latest/en-US/standard_features/sf_mc/sf_systemoverview/mc_storageandarchivingexplained.htm) where recording storage is separate from long term archival storage. + - Nx to fix: Implement something akin to archiving in [Milestone XProtect VMS][milestone] where recording storage is separate from long term archival storage. - Image Publication: - Nx relies on end-users or projects like this one to create and publish docker images. - - Nx Fix: Publish up-to-date images for all product variants and release channels. + - Nx to fix: Publish up-to-date images for all product variants and release channels. - Break-Fix-Version-Forward: - Nx product versions published via their releases API occasionally go backwards, e.g. `release`: v4.3 -> v5.0 -> v4.3. - Nx supports forward-only in-place upgrades, e.g. v4.3 to v5.0, but not v5.0 to v4.3. - Publishing generic tags, e.g. `latest`, using a version that regresses, e.g. v4.3 -> v5.0 -> v4.3 breaks deployments, see [Issue #62](https://github.com/ptr727/NxWitness/issues/62) for details. - `CreateMatrix` tooling keeps track of published versions, and prevents version regression of generic `latest`, `rc` and `beta` tags. - - Nx Fix: Release break-fix-version-forward only via release API's. + - Nx to fix: Release break-fix-version-forward only via release API's. ## Troubleshooting -I am not affiliated with Network Optix, I cannot provide support for their products, please contact [Network Optix Support](https://support.networkoptix.com/hc/en-us/community/topics) for product support issues. +I am not affiliated with Network Optix, I cannot provide support for their products, please contact [Network Optix Support][nx_support] for product support issues. If there are issues with the docker build scripts used in this project, please create a [GitHub Issue](https://github.com/ptr727/NxWitness/issues). Note that I only test and run `nxmeta-lsio:stable` in my home lab, other images get very little to no testing, please test accordingly. ### Missing Storage The following section will help troubleshoot common problems with missing storage. -If this does not help, please contact [Network Optix Support](https://support.networkoptix.com/hc/en-us/community/topics). +If this does not help, please contact [Network Optix Support][nx_support]. Please do not open a GitHub issue unless you are positive the issue is with the `Dockerfile`. -Confirm that all the mounted volumes are listed in the available storage locations in the [web admin](https://support.networkoptix.com/hc/en-us/articles/115012831028-Nx-Server-Web-Admin) portal. +Confirm that all the mounted volumes are listed in the available storage locations in the [web admin][nx_webadmin] portal. -Enable [debug logging](https://support.networkoptix.com/hc/en-us/articles/236033688-How-to-change-software-logging-level-and-how-to-get-logs) in the mediaserver: +Enable [debug logging][nx_debuglogging] in the mediaserver: Edit `mediaserver.conf`, set `logLevel=verbose`, restart the server. Look for clues in `/config/var/log/log_file.log`. @@ -363,7 +371,7 @@ cat /proc/mounts exit ``` -Example output for ZFS (note that ZFS support [was added](https://support.networkoptix.com/hc/en-us/articles/360042751193-Current-and-Past-Releases-Downloads-Release-Notes) in v5.0): +Example output for ZFS (note that ZFS support [was added][nx_releasenotes] in v5.0): ```console ssdpool/appdata /config zfs rw,noatime,xattr,posixacl 0 0 @@ -422,4 +430,75 @@ Edit the `additionalLocalFsTypes` option and add the required filesystem types, Alternatively call the configuration API directly: `wget --no-check-certificate --user=[username] --password=[password] https://[hostname]:[port]/api/systemSettings?additionalLocalFsTypes=fuse.shfs,btrfs,zfs`. -To my knowledge there is no solution to duplicate devices being filtered, please contact [Network Optix Support](https://support.networkoptix.com/hc/en-us/community/topics) and ask them to stop filtering filesystem types and devices. +To my knowledge there is no solution to duplicate devices being filtered, please contact [Network Optix Support][nx_support] and ask them to stop filtering filesystem types and devices. + +[actions]: https://github.com/ptr727/NxWitness/actions +[alpine]: https://alpinelinux.org/ +[digitalwatchdog]: https://digital-watchdog.com/ +[docker_nonroot]: https://docs.docker.com/develop/develop-images/dockerfile_best-practices/#user +[dw_upgrades]: https://dwspectrum.com/upgrades/ +[dwwatchdog]: https://digital-watchdog.com/productdetail/DW-Spectrum-IPVMS/ +[hub_dwspectrum_beta_shield]: https://img.shields.io/docker/v/ptr727/dwspectrum/beta?label=beta&logo=docker +[hub_dwspectrum_latest_shield]: https://img.shields.io/docker/v/ptr727/dwspectrum/latest?label=latest&logo=docker +[hub_dwspectrum_rc_shield]: https://img.shields.io/docker/v/ptr727/dwspectrum/rc?label=rc&logo=docker +[hub_dwspectrum_stable_shield]: https://img.shields.io/docker/v/ptr727/dwspectrum/stable?label=stable&logo=docker +[hub_dwspectrum-lsio_beta_shield]: https://img.shields.io/docker/v/ptr727/dwspectrum-lsio/beta?label=beta&logo=docker +[hub_dwspectrum-lsio_latest_shield]: https://img.shields.io/docker/v/ptr727/dwspectrum-lsio/latest?label=latest&logo=docker +[hub_dwspectrum-lsio_rc_shield]: https://img.shields.io/docker/v/ptr727/dwspectrum-lsio/rc?label=rc&logo=docker +[hub_dwspectrum-lsio_stable_shield]: https://img.shields.io/docker/v/ptr727/dwspectrum-lsio/stable?label=stable&logo=docker +[hub_dwspectrum-lsio]: https://hub.docker.com/r/ptr727/dwspectrum-lsio +[hub_dwspectrum]: https://hub.docker.com/r/ptr727/dwspectrum +[hub_nxmeta_beta_shield]: https://img.shields.io/docker/v/ptr727/nxmeta/beta?label=beta&logo=docker +[hub_nxmeta_latest_shield]: https://img.shields.io/docker/v/ptr727/nxmeta/latest?label=latest&logo=docker +[hub_nxmeta_rc_shield]: https://img.shields.io/docker/v/ptr727/nxmeta/rc?label=rc&logo=docker +[hub_nxmeta_stable_shield]: https://img.shields.io/docker/v/ptr727/nxmeta/stable?label=stable&logo=docker +[hub_nxmeta-lsio_beta_shield]: https://img.shields.io/docker/v/ptr727/nxmeta-lsio/beta?label=beta&logo=docker +[hub_nxmeta-lsio_latest_shield]: https://img.shields.io/docker/v/ptr727/nxmeta-lsio/latest?label=latest&logo=docker +[hub_nxmeta-lsio_rc_shield]: https://img.shields.io/docker/v/ptr727/nxmeta-lsio/rc?label=rc&logo=docker +[hub_nxmeta-lsio_stable_shield]: https://img.shields.io/docker/v/ptr727/nxmeta-lsio/stable?label=stable&logo=docker +[hub_nxmeta-lsio]: https://hub.docker.com/r/ptr727/nxmeta-lsio +[hub_nxmeta]: https://hub.docker.com/r/ptr727/nxmeta +[hub_nxwitness_beta_shield]: https://img.shields.io/docker/v/ptr727/nxwitness/beta?label=beta&logo=docker +[hub_nxwitness_latest_shield]: https://img.shields.io/docker/v/ptr727/nxwitness/latest?label=latest&logo=docker +[hub_nxwitness_rc_shield]: https://img.shields.io/docker/v/ptr727/nxwitness/rc?label=rc&logo=docker +[hub_nxwitness_stable_shield]: https://img.shields.io/docker/v/ptr727/nxwitness/stable?label=stable&logo=docker +[hub_nxwitness-lsio_beta_shield]: https://img.shields.io/docker/v/ptr727/nxwitness-lsio/beta?label=beta&logo=docker +[hub_nxwitness-lsio_latest_shield]: https://img.shields.io/docker/v/ptr727/nxwitness-lsio/latest?label=latest&logo=docker +[hub_nxwitness-lsio_rc_shield]: https://img.shields.io/docker/v/ptr727/nxwitness-lsio/rc?label=rc&logo=docker +[hub_nxwitness-lsio_stable_shield]: https://img.shields.io/docker/v/ptr727/nxwitness-lsio/stable?label=stable&logo=docker +[hub_nxwitness-lsio]: https://hub.docker.com/r/ptr727/nxwitness-lsio +[hub_nxwitness]: https://hub.docker.com/r/ptr727/nxwitness +[hub]: https://hub.docker.com/u/ptr727 +[isbuildpublished]: https://github.com/networkoptix/nx_open/blob/526967920636d3119c92a5220290ecc10957bf12/vms/libs/nx_vms_update/src/nx/vms/update/releases_info.cpp#L31 +[last_build_shield]: https://byob.yarr.is/ptr727/NxWitness/lastbuild +[last_commit_shield]: https://img.shields.io/github/last-commit/ptr727/NxWitness?logo=github +[license_shield]: https://img.shields.io/github/license/ptr727/NxWitness +[license]: ./LICENSE +[lsio_fleet]: https://fleet.linuxserver.io/ +[lsio_puid]: https://docs.linuxserver.io/general/understanding-puid-and-pgid +[lsio]: https://www.linuxserver.io/ +[milestone]: https://doc.milestonesys.com/latest/en-US/standard_features/sf_mc/sf_systemoverview/mc_storageandarchivingexplained.htm +[nx_cloud]: https://www.networkoptix.com/nx-witness/nx-witness-cloud/ +[nx_crunchbase]: https://www.crunchbase.com/organization/network-optix +[nx_debuglogging]: https://support.networkoptix.com/hc/en-us/articles/236033688-How-to-change-software-logging-level-and-how-to-get-logs +[nx_docker]: https://support.networkoptix.com/hc/en-us/articles/360037973573-Docker +[nx_github_compose]: https://github.com/networkoptix/nxvms-docker/blob/master/docker-compose.yaml +[nx_github_docker]: https://github.com/networkoptix/nxvms-docker +[nx_github_networking]: https://github.com/networkoptix/nxvms-docker#networking +[nx_github_storage]: https://github.com/networkoptix/nxvms-docker#notes-about-storage +[nx_github_volumes]: https://github.com/networkoptix/nxvms-docker#volumes-description +[nx_marketplace]: https://www.networkoptix.com/nx-meta/nx-integrations-marketplace/ +[nx_os_support]: https://support.networkoptix.com/hc/en-us/articles/205313168-Nx-Witness-Operating-System-Support +[nx_releasenotes]: https://support.networkoptix.com/hc/en-us/articles/360042751193-Current-and-Past-Releases-Downloads-Release-Notes +[nx_support]: https://support.networkoptix.com/hc/en-us/community/topics +[nx_webadmin]: https://support.networkoptix.com/hc/en-us/articles/115012831028-Nx-Server-Web-Admin +[nxmeta]: https://meta.nxvms.com/ +[nxwitness_releases]: https://updates.vmsproxy.com/default/releases.json +[nxwitness]: https://www.networkoptix.com/nx-witness/ +[repo]: https://github.com/ptr727/NxWitness +[s6]: https://github.com/just-containers/s6-overlay +[thehomerepo]: https://github.com/thehomerepot/nxwitness +[ubuntu_docker]: https://hub.docker.com/_/ubuntu +[ubuntu_lsio_docker]: https://hub.docker.com/r/lsiobase/ubuntu +[ubuntu]: https://ubuntu.com/ +[workflow_status_shield]: https://img.shields.io/github/actions/workflow/status/ptr727/NxWitness/BuildPublishPipeline.yml?branch=main&logo=github From 5ca43caac06149c2f80c1deb548298b411b2a0a2 Mon Sep 17 00:00:00 2001 From: Pieter Viljoen Date: Wed, 13 Mar 2024 04:09:04 +0000 Subject: [PATCH 3/8] Move Docker project --- {DWSpectrum-LSIO => Docker/DWSpectrum-LSIO}/.dockerignore | 0 {DWSpectrum-LSIO => Docker/DWSpectrum-LSIO}/Dockerfile | 0 {DWSpectrum-LSIO => Docker/DWSpectrum-LSIO}/Download.sh | 0 .../s6-rc.d/init-config-end/dependencies.d/init-nx-permissions | 0 .../s6-rc.d/init-config-end/dependencies.d/init-nx-relocate | 0 .../root/etc/s6-overlay/s6-rc.d/init-nx-permissions/run | 0 .../root/etc/s6-overlay/s6-rc.d/init-nx-permissions/type | 0 .../root/etc/s6-overlay/s6-rc.d/init-nx-permissions/up | 0 .../s6-rc.d/init-nx-relocate/dependencies.d/init-nx-permissions | 0 .../root/etc/s6-overlay/s6-rc.d/init-nx-relocate/run | 0 .../root/etc/s6-overlay/s6-rc.d/init-nx-relocate/type | 0 .../root/etc/s6-overlay/s6-rc.d/init-nx-relocate/up | 0 .../s6-rc.d/svc-nx-mediaserver/dependencies.d/init-services | 0 .../s6-rc.d/svc-nx-mediaserver/dependencies.d/svc-nx-roottool | 0 .../root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/run | 0 .../root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/type | 0 .../s6-rc.d/svc-nx-roottool/dependencies.d/init-services | 0 .../root/etc/s6-overlay/s6-rc.d/svc-nx-roottool/run | 0 .../root/etc/s6-overlay/s6-rc.d/svc-nx-roottool/type | 0 .../etc/s6-overlay/s6-rc.d/user/contents.d/init-nx-permissions | 0 .../root/etc/s6-overlay/s6-rc.d/user/contents.d/init-nx-relocate | 0 .../etc/s6-overlay/s6-rc.d/user/contents.d/svc-nx-mediaserver | 0 .../root/etc/s6-overlay/s6-rc.d/user/contents.d/svc-nx-roottool | 0 {DWSpectrum => Docker/DWSpectrum}/.dockerignore | 0 {DWSpectrum => Docker/DWSpectrum}/Dockerfile | 0 {DWSpectrum => Docker/DWSpectrum}/Download.sh | 0 {DWSpectrum => Docker/DWSpectrum}/root/entrypoint.sh | 0 {NxMeta-LSIO => Docker/NxMeta-LSIO}/.dockerignore | 0 {NxMeta-LSIO => Docker/NxMeta-LSIO}/Dockerfile | 0 {NxMeta-LSIO => Docker/NxMeta-LSIO}/Download.sh | 0 .../s6-rc.d/init-config-end/dependencies.d/init-nx-permissions | 0 .../s6-rc.d/init-config-end/dependencies.d/init-nx-relocate | 0 .../root/etc/s6-overlay/s6-rc.d/init-nx-permissions/run | 0 .../root/etc/s6-overlay/s6-rc.d/init-nx-permissions/type | 0 .../root/etc/s6-overlay/s6-rc.d/init-nx-permissions/up | 0 .../s6-rc.d/init-nx-relocate/dependencies.d/init-nx-permissions | 0 .../NxMeta-LSIO}/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/run | 0 .../root/etc/s6-overlay/s6-rc.d/init-nx-relocate/type | 0 .../NxMeta-LSIO}/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/up | 0 .../s6-rc.d/svc-nx-mediaserver/dependencies.d/init-services | 0 .../s6-rc.d/svc-nx-mediaserver/dependencies.d/svc-nx-roottool | 0 .../root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/run | 0 .../root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/type | 0 .../s6-rc.d/svc-nx-roottool/dependencies.d/init-services | 0 .../NxMeta-LSIO}/root/etc/s6-overlay/s6-rc.d/svc-nx-roottool/run | 0 .../NxMeta-LSIO}/root/etc/s6-overlay/s6-rc.d/svc-nx-roottool/type | 0 .../etc/s6-overlay/s6-rc.d/user/contents.d/init-nx-permissions | 0 .../root/etc/s6-overlay/s6-rc.d/user/contents.d/init-nx-relocate | 0 .../etc/s6-overlay/s6-rc.d/user/contents.d/svc-nx-mediaserver | 0 .../root/etc/s6-overlay/s6-rc.d/user/contents.d/svc-nx-roottool | 0 {NxMeta => Docker/NxMeta}/.dockerignore | 0 {NxMeta => Docker/NxMeta}/Dockerfile | 0 {NxMeta => Docker/NxMeta}/Download.sh | 0 {NxMeta => Docker/NxMeta}/root/entrypoint.sh | 0 {NxWitness-LSIO => Docker/NxWitness-LSIO}/.dockerignore | 0 {NxWitness-LSIO => Docker/NxWitness-LSIO}/Dockerfile | 0 {NxWitness-LSIO => Docker/NxWitness-LSIO}/Download.sh | 0 .../s6-rc.d/init-config-end/dependencies.d/init-nx-permissions | 0 .../s6-rc.d/init-config-end/dependencies.d/init-nx-relocate | 0 .../root/etc/s6-overlay/s6-rc.d/init-nx-permissions/run | 0 .../root/etc/s6-overlay/s6-rc.d/init-nx-permissions/type | 0 .../root/etc/s6-overlay/s6-rc.d/init-nx-permissions/up | 0 .../s6-rc.d/init-nx-relocate/dependencies.d/init-nx-permissions | 0 .../root/etc/s6-overlay/s6-rc.d/init-nx-relocate/run | 0 .../root/etc/s6-overlay/s6-rc.d/init-nx-relocate/type | 0 .../root/etc/s6-overlay/s6-rc.d/init-nx-relocate/up | 0 .../s6-rc.d/svc-nx-mediaserver/dependencies.d/init-services | 0 .../s6-rc.d/svc-nx-mediaserver/dependencies.d/svc-nx-roottool | 0 .../root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/run | 0 .../root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/type | 0 .../s6-rc.d/svc-nx-roottool/dependencies.d/init-services | 0 .../root/etc/s6-overlay/s6-rc.d/svc-nx-roottool/run | 0 .../root/etc/s6-overlay/s6-rc.d/svc-nx-roottool/type | 0 .../etc/s6-overlay/s6-rc.d/user/contents.d/init-nx-permissions | 0 .../root/etc/s6-overlay/s6-rc.d/user/contents.d/init-nx-relocate | 0 .../etc/s6-overlay/s6-rc.d/user/contents.d/svc-nx-mediaserver | 0 .../root/etc/s6-overlay/s6-rc.d/user/contents.d/svc-nx-roottool | 0 {NxWitness => Docker/NxWitness}/.dockerignore | 0 {NxWitness => Docker/NxWitness}/Dockerfile | 0 {NxWitness => Docker/NxWitness}/Download.sh | 0 {NxWitness => Docker/NxWitness}/root/entrypoint.sh | 0 81 files changed, 0 insertions(+), 0 deletions(-) rename {DWSpectrum-LSIO => Docker/DWSpectrum-LSIO}/.dockerignore (100%) rename {DWSpectrum-LSIO => Docker/DWSpectrum-LSIO}/Dockerfile (100%) rename {DWSpectrum-LSIO => Docker/DWSpectrum-LSIO}/Download.sh (100%) rename {DWSpectrum-LSIO => Docker/DWSpectrum-LSIO}/root/etc/s6-overlay/s6-rc.d/init-config-end/dependencies.d/init-nx-permissions (100%) rename {DWSpectrum-LSIO => Docker/DWSpectrum-LSIO}/root/etc/s6-overlay/s6-rc.d/init-config-end/dependencies.d/init-nx-relocate (100%) rename {DWSpectrum-LSIO => Docker/DWSpectrum-LSIO}/root/etc/s6-overlay/s6-rc.d/init-nx-permissions/run (100%) rename {DWSpectrum-LSIO => Docker/DWSpectrum-LSIO}/root/etc/s6-overlay/s6-rc.d/init-nx-permissions/type (100%) rename {DWSpectrum-LSIO => Docker/DWSpectrum-LSIO}/root/etc/s6-overlay/s6-rc.d/init-nx-permissions/up (100%) rename {DWSpectrum-LSIO => Docker/DWSpectrum-LSIO}/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/dependencies.d/init-nx-permissions (100%) rename {DWSpectrum-LSIO => Docker/DWSpectrum-LSIO}/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/run (100%) rename {DWSpectrum-LSIO => Docker/DWSpectrum-LSIO}/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/type (100%) rename {DWSpectrum-LSIO => Docker/DWSpectrum-LSIO}/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/up (100%) rename {DWSpectrum-LSIO => Docker/DWSpectrum-LSIO}/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/dependencies.d/init-services (100%) rename {DWSpectrum-LSIO => Docker/DWSpectrum-LSIO}/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/dependencies.d/svc-nx-roottool (100%) rename {DWSpectrum-LSIO => Docker/DWSpectrum-LSIO}/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/run (100%) rename {DWSpectrum-LSIO => Docker/DWSpectrum-LSIO}/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/type (100%) rename {DWSpectrum-LSIO => Docker/DWSpectrum-LSIO}/root/etc/s6-overlay/s6-rc.d/svc-nx-roottool/dependencies.d/init-services (100%) rename {DWSpectrum-LSIO => Docker/DWSpectrum-LSIO}/root/etc/s6-overlay/s6-rc.d/svc-nx-roottool/run (100%) rename {DWSpectrum-LSIO => Docker/DWSpectrum-LSIO}/root/etc/s6-overlay/s6-rc.d/svc-nx-roottool/type (100%) rename {DWSpectrum-LSIO => Docker/DWSpectrum-LSIO}/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-nx-permissions (100%) rename {DWSpectrum-LSIO => Docker/DWSpectrum-LSIO}/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-nx-relocate (100%) rename {DWSpectrum-LSIO => Docker/DWSpectrum-LSIO}/root/etc/s6-overlay/s6-rc.d/user/contents.d/svc-nx-mediaserver (100%) rename {DWSpectrum-LSIO => Docker/DWSpectrum-LSIO}/root/etc/s6-overlay/s6-rc.d/user/contents.d/svc-nx-roottool (100%) rename {DWSpectrum => Docker/DWSpectrum}/.dockerignore (100%) rename {DWSpectrum => Docker/DWSpectrum}/Dockerfile (100%) rename {DWSpectrum => Docker/DWSpectrum}/Download.sh (100%) rename {DWSpectrum => Docker/DWSpectrum}/root/entrypoint.sh (100%) rename {NxMeta-LSIO => Docker/NxMeta-LSIO}/.dockerignore (100%) rename {NxMeta-LSIO => Docker/NxMeta-LSIO}/Dockerfile (100%) rename {NxMeta-LSIO => Docker/NxMeta-LSIO}/Download.sh (100%) rename {NxMeta-LSIO => Docker/NxMeta-LSIO}/root/etc/s6-overlay/s6-rc.d/init-config-end/dependencies.d/init-nx-permissions (100%) rename {NxMeta-LSIO => Docker/NxMeta-LSIO}/root/etc/s6-overlay/s6-rc.d/init-config-end/dependencies.d/init-nx-relocate (100%) rename {NxMeta-LSIO => Docker/NxMeta-LSIO}/root/etc/s6-overlay/s6-rc.d/init-nx-permissions/run (100%) rename {NxMeta-LSIO => Docker/NxMeta-LSIO}/root/etc/s6-overlay/s6-rc.d/init-nx-permissions/type (100%) rename {NxMeta-LSIO => Docker/NxMeta-LSIO}/root/etc/s6-overlay/s6-rc.d/init-nx-permissions/up (100%) rename {NxMeta-LSIO => Docker/NxMeta-LSIO}/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/dependencies.d/init-nx-permissions (100%) rename {NxMeta-LSIO => Docker/NxMeta-LSIO}/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/run (100%) rename {NxMeta-LSIO => Docker/NxMeta-LSIO}/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/type (100%) rename {NxMeta-LSIO => Docker/NxMeta-LSIO}/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/up (100%) rename {NxMeta-LSIO => Docker/NxMeta-LSIO}/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/dependencies.d/init-services (100%) rename {NxMeta-LSIO => Docker/NxMeta-LSIO}/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/dependencies.d/svc-nx-roottool (100%) rename {NxMeta-LSIO => Docker/NxMeta-LSIO}/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/run (100%) rename {NxMeta-LSIO => Docker/NxMeta-LSIO}/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/type (100%) rename {NxMeta-LSIO => Docker/NxMeta-LSIO}/root/etc/s6-overlay/s6-rc.d/svc-nx-roottool/dependencies.d/init-services (100%) rename {NxMeta-LSIO => Docker/NxMeta-LSIO}/root/etc/s6-overlay/s6-rc.d/svc-nx-roottool/run (100%) rename {NxMeta-LSIO => Docker/NxMeta-LSIO}/root/etc/s6-overlay/s6-rc.d/svc-nx-roottool/type (100%) rename {NxMeta-LSIO => Docker/NxMeta-LSIO}/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-nx-permissions (100%) rename {NxMeta-LSIO => Docker/NxMeta-LSIO}/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-nx-relocate (100%) rename {NxMeta-LSIO => Docker/NxMeta-LSIO}/root/etc/s6-overlay/s6-rc.d/user/contents.d/svc-nx-mediaserver (100%) rename {NxMeta-LSIO => Docker/NxMeta-LSIO}/root/etc/s6-overlay/s6-rc.d/user/contents.d/svc-nx-roottool (100%) rename {NxMeta => Docker/NxMeta}/.dockerignore (100%) rename {NxMeta => Docker/NxMeta}/Dockerfile (100%) rename {NxMeta => Docker/NxMeta}/Download.sh (100%) rename {NxMeta => Docker/NxMeta}/root/entrypoint.sh (100%) rename {NxWitness-LSIO => Docker/NxWitness-LSIO}/.dockerignore (100%) rename {NxWitness-LSIO => Docker/NxWitness-LSIO}/Dockerfile (100%) rename {NxWitness-LSIO => Docker/NxWitness-LSIO}/Download.sh (100%) rename {NxWitness-LSIO => Docker/NxWitness-LSIO}/root/etc/s6-overlay/s6-rc.d/init-config-end/dependencies.d/init-nx-permissions (100%) rename {NxWitness-LSIO => Docker/NxWitness-LSIO}/root/etc/s6-overlay/s6-rc.d/init-config-end/dependencies.d/init-nx-relocate (100%) rename {NxWitness-LSIO => Docker/NxWitness-LSIO}/root/etc/s6-overlay/s6-rc.d/init-nx-permissions/run (100%) rename {NxWitness-LSIO => Docker/NxWitness-LSIO}/root/etc/s6-overlay/s6-rc.d/init-nx-permissions/type (100%) rename {NxWitness-LSIO => Docker/NxWitness-LSIO}/root/etc/s6-overlay/s6-rc.d/init-nx-permissions/up (100%) rename {NxWitness-LSIO => Docker/NxWitness-LSIO}/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/dependencies.d/init-nx-permissions (100%) rename {NxWitness-LSIO => Docker/NxWitness-LSIO}/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/run (100%) rename {NxWitness-LSIO => Docker/NxWitness-LSIO}/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/type (100%) rename {NxWitness-LSIO => Docker/NxWitness-LSIO}/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/up (100%) rename {NxWitness-LSIO => Docker/NxWitness-LSIO}/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/dependencies.d/init-services (100%) rename {NxWitness-LSIO => Docker/NxWitness-LSIO}/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/dependencies.d/svc-nx-roottool (100%) rename {NxWitness-LSIO => Docker/NxWitness-LSIO}/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/run (100%) rename {NxWitness-LSIO => Docker/NxWitness-LSIO}/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/type (100%) rename {NxWitness-LSIO => Docker/NxWitness-LSIO}/root/etc/s6-overlay/s6-rc.d/svc-nx-roottool/dependencies.d/init-services (100%) rename {NxWitness-LSIO => Docker/NxWitness-LSIO}/root/etc/s6-overlay/s6-rc.d/svc-nx-roottool/run (100%) rename {NxWitness-LSIO => Docker/NxWitness-LSIO}/root/etc/s6-overlay/s6-rc.d/svc-nx-roottool/type (100%) rename {NxWitness-LSIO => Docker/NxWitness-LSIO}/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-nx-permissions (100%) rename {NxWitness-LSIO => Docker/NxWitness-LSIO}/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-nx-relocate (100%) rename {NxWitness-LSIO => Docker/NxWitness-LSIO}/root/etc/s6-overlay/s6-rc.d/user/contents.d/svc-nx-mediaserver (100%) rename {NxWitness-LSIO => Docker/NxWitness-LSIO}/root/etc/s6-overlay/s6-rc.d/user/contents.d/svc-nx-roottool (100%) rename {NxWitness => Docker/NxWitness}/.dockerignore (100%) rename {NxWitness => Docker/NxWitness}/Dockerfile (100%) rename {NxWitness => Docker/NxWitness}/Download.sh (100%) rename {NxWitness => Docker/NxWitness}/root/entrypoint.sh (100%) diff --git a/DWSpectrum-LSIO/.dockerignore b/Docker/DWSpectrum-LSIO/.dockerignore similarity index 100% rename from DWSpectrum-LSIO/.dockerignore rename to Docker/DWSpectrum-LSIO/.dockerignore diff --git a/DWSpectrum-LSIO/Dockerfile b/Docker/DWSpectrum-LSIO/Dockerfile similarity index 100% rename from DWSpectrum-LSIO/Dockerfile rename to Docker/DWSpectrum-LSIO/Dockerfile diff --git a/DWSpectrum-LSIO/Download.sh b/Docker/DWSpectrum-LSIO/Download.sh similarity index 100% rename from DWSpectrum-LSIO/Download.sh rename to Docker/DWSpectrum-LSIO/Download.sh diff --git a/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/init-config-end/dependencies.d/init-nx-permissions b/Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/init-config-end/dependencies.d/init-nx-permissions similarity index 100% rename from DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/init-config-end/dependencies.d/init-nx-permissions rename to Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/init-config-end/dependencies.d/init-nx-permissions diff --git a/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/init-config-end/dependencies.d/init-nx-relocate b/Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/init-config-end/dependencies.d/init-nx-relocate similarity index 100% rename from DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/init-config-end/dependencies.d/init-nx-relocate rename to Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/init-config-end/dependencies.d/init-nx-relocate diff --git a/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-permissions/run b/Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-permissions/run similarity index 100% rename from DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-permissions/run rename to Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-permissions/run diff --git a/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-permissions/type b/Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-permissions/type similarity index 100% rename from DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-permissions/type rename to Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-permissions/type diff --git a/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-permissions/up b/Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-permissions/up similarity index 100% rename from DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-permissions/up rename to Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-permissions/up diff --git a/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/dependencies.d/init-nx-permissions b/Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/dependencies.d/init-nx-permissions similarity index 100% rename from DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/dependencies.d/init-nx-permissions rename to Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/dependencies.d/init-nx-permissions diff --git a/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/run b/Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/run similarity index 100% rename from DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/run rename to Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/run diff --git a/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/type b/Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/type similarity index 100% rename from DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/type rename to Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/type diff --git a/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/up b/Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/up similarity index 100% rename from DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/up rename to Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/up diff --git a/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/dependencies.d/init-services b/Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/dependencies.d/init-services similarity index 100% rename from DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/dependencies.d/init-services rename to Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/dependencies.d/init-services diff --git a/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/dependencies.d/svc-nx-roottool b/Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/dependencies.d/svc-nx-roottool similarity index 100% rename from DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/dependencies.d/svc-nx-roottool rename to Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/dependencies.d/svc-nx-roottool diff --git a/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/run b/Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/run similarity index 100% rename from DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/run rename to Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/run diff --git a/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/type b/Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/type similarity index 100% rename from DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/type rename to Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/type diff --git a/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-roottool/dependencies.d/init-services b/Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-roottool/dependencies.d/init-services similarity index 100% rename from DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-roottool/dependencies.d/init-services rename to Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-roottool/dependencies.d/init-services diff --git a/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-roottool/run b/Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-roottool/run similarity index 100% rename from DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-roottool/run rename to Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-roottool/run diff --git a/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-roottool/type b/Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-roottool/type similarity index 100% rename from DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-roottool/type rename to Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-roottool/type diff --git a/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-nx-permissions b/Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-nx-permissions similarity index 100% rename from DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-nx-permissions rename to Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-nx-permissions diff --git a/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-nx-relocate b/Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-nx-relocate similarity index 100% rename from DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-nx-relocate rename to Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-nx-relocate diff --git a/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/user/contents.d/svc-nx-mediaserver b/Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/user/contents.d/svc-nx-mediaserver similarity index 100% rename from DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/user/contents.d/svc-nx-mediaserver rename to Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/user/contents.d/svc-nx-mediaserver diff --git a/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/user/contents.d/svc-nx-roottool b/Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/user/contents.d/svc-nx-roottool similarity index 100% rename from DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/user/contents.d/svc-nx-roottool rename to Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/user/contents.d/svc-nx-roottool diff --git a/DWSpectrum/.dockerignore b/Docker/DWSpectrum/.dockerignore similarity index 100% rename from DWSpectrum/.dockerignore rename to Docker/DWSpectrum/.dockerignore diff --git a/DWSpectrum/Dockerfile b/Docker/DWSpectrum/Dockerfile similarity index 100% rename from DWSpectrum/Dockerfile rename to Docker/DWSpectrum/Dockerfile diff --git a/DWSpectrum/Download.sh b/Docker/DWSpectrum/Download.sh similarity index 100% rename from DWSpectrum/Download.sh rename to Docker/DWSpectrum/Download.sh diff --git a/DWSpectrum/root/entrypoint.sh b/Docker/DWSpectrum/root/entrypoint.sh similarity index 100% rename from DWSpectrum/root/entrypoint.sh rename to Docker/DWSpectrum/root/entrypoint.sh diff --git a/NxMeta-LSIO/.dockerignore b/Docker/NxMeta-LSIO/.dockerignore similarity index 100% rename from NxMeta-LSIO/.dockerignore rename to Docker/NxMeta-LSIO/.dockerignore diff --git a/NxMeta-LSIO/Dockerfile b/Docker/NxMeta-LSIO/Dockerfile similarity index 100% rename from NxMeta-LSIO/Dockerfile rename to Docker/NxMeta-LSIO/Dockerfile diff --git a/NxMeta-LSIO/Download.sh b/Docker/NxMeta-LSIO/Download.sh similarity index 100% rename from NxMeta-LSIO/Download.sh rename to Docker/NxMeta-LSIO/Download.sh diff --git a/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/init-config-end/dependencies.d/init-nx-permissions b/Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/init-config-end/dependencies.d/init-nx-permissions similarity index 100% rename from NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/init-config-end/dependencies.d/init-nx-permissions rename to Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/init-config-end/dependencies.d/init-nx-permissions diff --git a/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/init-config-end/dependencies.d/init-nx-relocate b/Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/init-config-end/dependencies.d/init-nx-relocate similarity index 100% rename from NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/init-config-end/dependencies.d/init-nx-relocate rename to Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/init-config-end/dependencies.d/init-nx-relocate diff --git a/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-permissions/run b/Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-permissions/run similarity index 100% rename from NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-permissions/run rename to Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-permissions/run diff --git a/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-permissions/type b/Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-permissions/type similarity index 100% rename from NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-permissions/type rename to Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-permissions/type diff --git a/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-permissions/up b/Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-permissions/up similarity index 100% rename from NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-permissions/up rename to Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-permissions/up diff --git a/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/dependencies.d/init-nx-permissions b/Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/dependencies.d/init-nx-permissions similarity index 100% rename from NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/dependencies.d/init-nx-permissions rename to Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/dependencies.d/init-nx-permissions diff --git a/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/run b/Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/run similarity index 100% rename from NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/run rename to Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/run diff --git a/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/type b/Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/type similarity index 100% rename from NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/type rename to Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/type diff --git a/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/up b/Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/up similarity index 100% rename from NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/up rename to Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/up diff --git a/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/dependencies.d/init-services b/Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/dependencies.d/init-services similarity index 100% rename from NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/dependencies.d/init-services rename to Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/dependencies.d/init-services diff --git a/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/dependencies.d/svc-nx-roottool b/Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/dependencies.d/svc-nx-roottool similarity index 100% rename from NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/dependencies.d/svc-nx-roottool rename to Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/dependencies.d/svc-nx-roottool diff --git a/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/run b/Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/run similarity index 100% rename from NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/run rename to Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/run diff --git a/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/type b/Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/type similarity index 100% rename from NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/type rename to Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/type diff --git a/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-roottool/dependencies.d/init-services b/Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-roottool/dependencies.d/init-services similarity index 100% rename from NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-roottool/dependencies.d/init-services rename to Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-roottool/dependencies.d/init-services diff --git a/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-roottool/run b/Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-roottool/run similarity index 100% rename from NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-roottool/run rename to Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-roottool/run diff --git a/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-roottool/type b/Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-roottool/type similarity index 100% rename from NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-roottool/type rename to Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-roottool/type diff --git a/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-nx-permissions b/Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-nx-permissions similarity index 100% rename from NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-nx-permissions rename to Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-nx-permissions diff --git a/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-nx-relocate b/Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-nx-relocate similarity index 100% rename from NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-nx-relocate rename to Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-nx-relocate diff --git a/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/user/contents.d/svc-nx-mediaserver b/Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/user/contents.d/svc-nx-mediaserver similarity index 100% rename from NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/user/contents.d/svc-nx-mediaserver rename to Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/user/contents.d/svc-nx-mediaserver diff --git a/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/user/contents.d/svc-nx-roottool b/Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/user/contents.d/svc-nx-roottool similarity index 100% rename from NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/user/contents.d/svc-nx-roottool rename to Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/user/contents.d/svc-nx-roottool diff --git a/NxMeta/.dockerignore b/Docker/NxMeta/.dockerignore similarity index 100% rename from NxMeta/.dockerignore rename to Docker/NxMeta/.dockerignore diff --git a/NxMeta/Dockerfile b/Docker/NxMeta/Dockerfile similarity index 100% rename from NxMeta/Dockerfile rename to Docker/NxMeta/Dockerfile diff --git a/NxMeta/Download.sh b/Docker/NxMeta/Download.sh similarity index 100% rename from NxMeta/Download.sh rename to Docker/NxMeta/Download.sh diff --git a/NxMeta/root/entrypoint.sh b/Docker/NxMeta/root/entrypoint.sh similarity index 100% rename from NxMeta/root/entrypoint.sh rename to Docker/NxMeta/root/entrypoint.sh diff --git a/NxWitness-LSIO/.dockerignore b/Docker/NxWitness-LSIO/.dockerignore similarity index 100% rename from NxWitness-LSIO/.dockerignore rename to Docker/NxWitness-LSIO/.dockerignore diff --git a/NxWitness-LSIO/Dockerfile b/Docker/NxWitness-LSIO/Dockerfile similarity index 100% rename from NxWitness-LSIO/Dockerfile rename to Docker/NxWitness-LSIO/Dockerfile diff --git a/NxWitness-LSIO/Download.sh b/Docker/NxWitness-LSIO/Download.sh similarity index 100% rename from NxWitness-LSIO/Download.sh rename to Docker/NxWitness-LSIO/Download.sh diff --git a/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/init-config-end/dependencies.d/init-nx-permissions b/Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/init-config-end/dependencies.d/init-nx-permissions similarity index 100% rename from NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/init-config-end/dependencies.d/init-nx-permissions rename to Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/init-config-end/dependencies.d/init-nx-permissions diff --git a/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/init-config-end/dependencies.d/init-nx-relocate b/Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/init-config-end/dependencies.d/init-nx-relocate similarity index 100% rename from NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/init-config-end/dependencies.d/init-nx-relocate rename to Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/init-config-end/dependencies.d/init-nx-relocate diff --git a/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-permissions/run b/Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-permissions/run similarity index 100% rename from NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-permissions/run rename to Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-permissions/run diff --git a/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-permissions/type b/Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-permissions/type similarity index 100% rename from NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-permissions/type rename to Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-permissions/type diff --git a/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-permissions/up b/Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-permissions/up similarity index 100% rename from NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-permissions/up rename to Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-permissions/up diff --git a/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/dependencies.d/init-nx-permissions b/Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/dependencies.d/init-nx-permissions similarity index 100% rename from NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/dependencies.d/init-nx-permissions rename to Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/dependencies.d/init-nx-permissions diff --git a/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/run b/Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/run similarity index 100% rename from NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/run rename to Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/run diff --git a/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/type b/Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/type similarity index 100% rename from NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/type rename to Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/type diff --git a/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/up b/Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/up similarity index 100% rename from NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/up rename to Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/up diff --git a/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/dependencies.d/init-services b/Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/dependencies.d/init-services similarity index 100% rename from NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/dependencies.d/init-services rename to Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/dependencies.d/init-services diff --git a/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/dependencies.d/svc-nx-roottool b/Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/dependencies.d/svc-nx-roottool similarity index 100% rename from NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/dependencies.d/svc-nx-roottool rename to Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/dependencies.d/svc-nx-roottool diff --git a/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/run b/Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/run similarity index 100% rename from NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/run rename to Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/run diff --git a/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/type b/Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/type similarity index 100% rename from NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/type rename to Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/type diff --git a/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-roottool/dependencies.d/init-services b/Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-roottool/dependencies.d/init-services similarity index 100% rename from NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-roottool/dependencies.d/init-services rename to Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-roottool/dependencies.d/init-services diff --git a/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-roottool/run b/Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-roottool/run similarity index 100% rename from NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-roottool/run rename to Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-roottool/run diff --git a/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-roottool/type b/Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-roottool/type similarity index 100% rename from NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-roottool/type rename to Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-roottool/type diff --git a/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-nx-permissions b/Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-nx-permissions similarity index 100% rename from NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-nx-permissions rename to Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-nx-permissions diff --git a/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-nx-relocate b/Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-nx-relocate similarity index 100% rename from NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-nx-relocate rename to Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-nx-relocate diff --git a/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/user/contents.d/svc-nx-mediaserver b/Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/user/contents.d/svc-nx-mediaserver similarity index 100% rename from NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/user/contents.d/svc-nx-mediaserver rename to Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/user/contents.d/svc-nx-mediaserver diff --git a/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/user/contents.d/svc-nx-roottool b/Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/user/contents.d/svc-nx-roottool similarity index 100% rename from NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/user/contents.d/svc-nx-roottool rename to Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/user/contents.d/svc-nx-roottool diff --git a/NxWitness/.dockerignore b/Docker/NxWitness/.dockerignore similarity index 100% rename from NxWitness/.dockerignore rename to Docker/NxWitness/.dockerignore diff --git a/NxWitness/Dockerfile b/Docker/NxWitness/Dockerfile similarity index 100% rename from NxWitness/Dockerfile rename to Docker/NxWitness/Dockerfile diff --git a/NxWitness/Download.sh b/Docker/NxWitness/Download.sh similarity index 100% rename from NxWitness/Download.sh rename to Docker/NxWitness/Download.sh diff --git a/NxWitness/root/entrypoint.sh b/Docker/NxWitness/root/entrypoint.sh similarity index 100% rename from NxWitness/root/entrypoint.sh rename to Docker/NxWitness/root/entrypoint.sh From f8d1d6a612434113ac7c8f1b6eb9e1306138acc4 Mon Sep 17 00:00:00 2001 From: Pieter Viljoen Date: Wed, 13 Mar 2024 23:53:31 +0000 Subject: [PATCH 4/8] Restructure Dockerfile's --- Docker/{DWSpectrum-LSIO/Dockerfile => DWSpectrum-LSIO.Dockerfile} | 0 Docker/{DWSpectrum/Dockerfile => DWSpectrum.Dockerfile} | 0 Docker/{NxMeta-LSIO/Dockerfile => NxMeta-LSIO.Dockerfile} | 0 Docker/{NxMeta/Dockerfile => NxMeta.Dockerfile} | 0 Docker/{NxWitness-LSIO/Dockerfile => NxWitness-LSIO.Dockerfile} | 0 Docker/{NxWitness/Dockerfile => NxWitness.Dockerfile} | 0 Make/Download.sh => Docker/download.sh | 0 {Entrypoint => Docker}/entrypoint.sh | 0 .../s6-rc.d/init-config-end/dependencies.d/init-nx-permissions | 0 .../s6-rc.d/init-config-end/dependencies.d/init-nx-relocate | 0 {LSIO/etc => Docker}/s6-overlay/s6-rc.d/init-nx-permissions/run | 0 {LSIO/etc => Docker}/s6-overlay/s6-rc.d/init-nx-permissions/type | 0 {LSIO/etc => Docker}/s6-overlay/s6-rc.d/init-nx-permissions/up | 0 .../s6-rc.d/init-nx-relocate/dependencies.d/init-nx-permissions | 0 {LSIO/etc => Docker}/s6-overlay/s6-rc.d/init-nx-relocate/run | 0 {LSIO/etc => Docker}/s6-overlay/s6-rc.d/init-nx-relocate/type | 0 {LSIO/etc => Docker}/s6-overlay/s6-rc.d/init-nx-relocate/up | 0 .../s6-rc.d/svc-nx-mediaserver/dependencies.d/init-services | 0 .../s6-rc.d/svc-nx-mediaserver/dependencies.d/svc-nx-roottool | 0 {LSIO/etc => Docker}/s6-overlay/s6-rc.d/svc-nx-mediaserver/run | 0 {LSIO/etc => Docker}/s6-overlay/s6-rc.d/svc-nx-mediaserver/type | 0 .../s6-rc.d/svc-nx-roottool/dependencies.d/init-services | 0 {LSIO/etc => Docker}/s6-overlay/s6-rc.d/svc-nx-roottool/run | 0 {LSIO/etc => Docker}/s6-overlay/s6-rc.d/svc-nx-roottool/type | 0 .../s6-overlay/s6-rc.d/user/contents.d/init-nx-permissions | 0 .../s6-overlay/s6-rc.d/user/contents.d/init-nx-relocate | 0 .../s6-overlay/s6-rc.d/user/contents.d/svc-nx-mediaserver | 0 .../s6-overlay/s6-rc.d/user/contents.d/svc-nx-roottool | 0 28 files changed, 0 insertions(+), 0 deletions(-) rename Docker/{DWSpectrum-LSIO/Dockerfile => DWSpectrum-LSIO.Dockerfile} (100%) rename Docker/{DWSpectrum/Dockerfile => DWSpectrum.Dockerfile} (100%) rename Docker/{NxMeta-LSIO/Dockerfile => NxMeta-LSIO.Dockerfile} (100%) rename Docker/{NxMeta/Dockerfile => NxMeta.Dockerfile} (100%) rename Docker/{NxWitness-LSIO/Dockerfile => NxWitness-LSIO.Dockerfile} (100%) rename Docker/{NxWitness/Dockerfile => NxWitness.Dockerfile} (100%) rename Make/Download.sh => Docker/download.sh (100%) rename {Entrypoint => Docker}/entrypoint.sh (100%) rename {LSIO/etc => Docker}/s6-overlay/s6-rc.d/init-config-end/dependencies.d/init-nx-permissions (100%) rename {LSIO/etc => Docker}/s6-overlay/s6-rc.d/init-config-end/dependencies.d/init-nx-relocate (100%) rename {LSIO/etc => Docker}/s6-overlay/s6-rc.d/init-nx-permissions/run (100%) rename {LSIO/etc => Docker}/s6-overlay/s6-rc.d/init-nx-permissions/type (100%) rename {LSIO/etc => Docker}/s6-overlay/s6-rc.d/init-nx-permissions/up (100%) rename {LSIO/etc => Docker}/s6-overlay/s6-rc.d/init-nx-relocate/dependencies.d/init-nx-permissions (100%) rename {LSIO/etc => Docker}/s6-overlay/s6-rc.d/init-nx-relocate/run (100%) rename {LSIO/etc => Docker}/s6-overlay/s6-rc.d/init-nx-relocate/type (100%) rename {LSIO/etc => Docker}/s6-overlay/s6-rc.d/init-nx-relocate/up (100%) rename {LSIO/etc => Docker}/s6-overlay/s6-rc.d/svc-nx-mediaserver/dependencies.d/init-services (100%) rename {LSIO/etc => Docker}/s6-overlay/s6-rc.d/svc-nx-mediaserver/dependencies.d/svc-nx-roottool (100%) rename {LSIO/etc => Docker}/s6-overlay/s6-rc.d/svc-nx-mediaserver/run (100%) rename {LSIO/etc => Docker}/s6-overlay/s6-rc.d/svc-nx-mediaserver/type (100%) rename {LSIO/etc => Docker}/s6-overlay/s6-rc.d/svc-nx-roottool/dependencies.d/init-services (100%) rename {LSIO/etc => Docker}/s6-overlay/s6-rc.d/svc-nx-roottool/run (100%) rename {LSIO/etc => Docker}/s6-overlay/s6-rc.d/svc-nx-roottool/type (100%) rename {LSIO/etc => Docker}/s6-overlay/s6-rc.d/user/contents.d/init-nx-permissions (100%) rename {LSIO/etc => Docker}/s6-overlay/s6-rc.d/user/contents.d/init-nx-relocate (100%) rename {LSIO/etc => Docker}/s6-overlay/s6-rc.d/user/contents.d/svc-nx-mediaserver (100%) rename {LSIO/etc => Docker}/s6-overlay/s6-rc.d/user/contents.d/svc-nx-roottool (100%) diff --git a/Docker/DWSpectrum-LSIO/Dockerfile b/Docker/DWSpectrum-LSIO.Dockerfile similarity index 100% rename from Docker/DWSpectrum-LSIO/Dockerfile rename to Docker/DWSpectrum-LSIO.Dockerfile diff --git a/Docker/DWSpectrum/Dockerfile b/Docker/DWSpectrum.Dockerfile similarity index 100% rename from Docker/DWSpectrum/Dockerfile rename to Docker/DWSpectrum.Dockerfile diff --git a/Docker/NxMeta-LSIO/Dockerfile b/Docker/NxMeta-LSIO.Dockerfile similarity index 100% rename from Docker/NxMeta-LSIO/Dockerfile rename to Docker/NxMeta-LSIO.Dockerfile diff --git a/Docker/NxMeta/Dockerfile b/Docker/NxMeta.Dockerfile similarity index 100% rename from Docker/NxMeta/Dockerfile rename to Docker/NxMeta.Dockerfile diff --git a/Docker/NxWitness-LSIO/Dockerfile b/Docker/NxWitness-LSIO.Dockerfile similarity index 100% rename from Docker/NxWitness-LSIO/Dockerfile rename to Docker/NxWitness-LSIO.Dockerfile diff --git a/Docker/NxWitness/Dockerfile b/Docker/NxWitness.Dockerfile similarity index 100% rename from Docker/NxWitness/Dockerfile rename to Docker/NxWitness.Dockerfile diff --git a/Make/Download.sh b/Docker/download.sh similarity index 100% rename from Make/Download.sh rename to Docker/download.sh diff --git a/Entrypoint/entrypoint.sh b/Docker/entrypoint.sh similarity index 100% rename from Entrypoint/entrypoint.sh rename to Docker/entrypoint.sh diff --git a/LSIO/etc/s6-overlay/s6-rc.d/init-config-end/dependencies.d/init-nx-permissions b/Docker/s6-overlay/s6-rc.d/init-config-end/dependencies.d/init-nx-permissions similarity index 100% rename from LSIO/etc/s6-overlay/s6-rc.d/init-config-end/dependencies.d/init-nx-permissions rename to Docker/s6-overlay/s6-rc.d/init-config-end/dependencies.d/init-nx-permissions diff --git a/LSIO/etc/s6-overlay/s6-rc.d/init-config-end/dependencies.d/init-nx-relocate b/Docker/s6-overlay/s6-rc.d/init-config-end/dependencies.d/init-nx-relocate similarity index 100% rename from LSIO/etc/s6-overlay/s6-rc.d/init-config-end/dependencies.d/init-nx-relocate rename to Docker/s6-overlay/s6-rc.d/init-config-end/dependencies.d/init-nx-relocate diff --git a/LSIO/etc/s6-overlay/s6-rc.d/init-nx-permissions/run b/Docker/s6-overlay/s6-rc.d/init-nx-permissions/run similarity index 100% rename from LSIO/etc/s6-overlay/s6-rc.d/init-nx-permissions/run rename to Docker/s6-overlay/s6-rc.d/init-nx-permissions/run diff --git a/LSIO/etc/s6-overlay/s6-rc.d/init-nx-permissions/type b/Docker/s6-overlay/s6-rc.d/init-nx-permissions/type similarity index 100% rename from LSIO/etc/s6-overlay/s6-rc.d/init-nx-permissions/type rename to Docker/s6-overlay/s6-rc.d/init-nx-permissions/type diff --git a/LSIO/etc/s6-overlay/s6-rc.d/init-nx-permissions/up b/Docker/s6-overlay/s6-rc.d/init-nx-permissions/up similarity index 100% rename from LSIO/etc/s6-overlay/s6-rc.d/init-nx-permissions/up rename to Docker/s6-overlay/s6-rc.d/init-nx-permissions/up diff --git a/LSIO/etc/s6-overlay/s6-rc.d/init-nx-relocate/dependencies.d/init-nx-permissions b/Docker/s6-overlay/s6-rc.d/init-nx-relocate/dependencies.d/init-nx-permissions similarity index 100% rename from LSIO/etc/s6-overlay/s6-rc.d/init-nx-relocate/dependencies.d/init-nx-permissions rename to Docker/s6-overlay/s6-rc.d/init-nx-relocate/dependencies.d/init-nx-permissions diff --git a/LSIO/etc/s6-overlay/s6-rc.d/init-nx-relocate/run b/Docker/s6-overlay/s6-rc.d/init-nx-relocate/run similarity index 100% rename from LSIO/etc/s6-overlay/s6-rc.d/init-nx-relocate/run rename to Docker/s6-overlay/s6-rc.d/init-nx-relocate/run diff --git a/LSIO/etc/s6-overlay/s6-rc.d/init-nx-relocate/type b/Docker/s6-overlay/s6-rc.d/init-nx-relocate/type similarity index 100% rename from LSIO/etc/s6-overlay/s6-rc.d/init-nx-relocate/type rename to Docker/s6-overlay/s6-rc.d/init-nx-relocate/type diff --git a/LSIO/etc/s6-overlay/s6-rc.d/init-nx-relocate/up b/Docker/s6-overlay/s6-rc.d/init-nx-relocate/up similarity index 100% rename from LSIO/etc/s6-overlay/s6-rc.d/init-nx-relocate/up rename to Docker/s6-overlay/s6-rc.d/init-nx-relocate/up diff --git a/LSIO/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/dependencies.d/init-services b/Docker/s6-overlay/s6-rc.d/svc-nx-mediaserver/dependencies.d/init-services similarity index 100% rename from LSIO/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/dependencies.d/init-services rename to Docker/s6-overlay/s6-rc.d/svc-nx-mediaserver/dependencies.d/init-services diff --git a/LSIO/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/dependencies.d/svc-nx-roottool b/Docker/s6-overlay/s6-rc.d/svc-nx-mediaserver/dependencies.d/svc-nx-roottool similarity index 100% rename from LSIO/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/dependencies.d/svc-nx-roottool rename to Docker/s6-overlay/s6-rc.d/svc-nx-mediaserver/dependencies.d/svc-nx-roottool diff --git a/LSIO/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/run b/Docker/s6-overlay/s6-rc.d/svc-nx-mediaserver/run similarity index 100% rename from LSIO/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/run rename to Docker/s6-overlay/s6-rc.d/svc-nx-mediaserver/run diff --git a/LSIO/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/type b/Docker/s6-overlay/s6-rc.d/svc-nx-mediaserver/type similarity index 100% rename from LSIO/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/type rename to Docker/s6-overlay/s6-rc.d/svc-nx-mediaserver/type diff --git a/LSIO/etc/s6-overlay/s6-rc.d/svc-nx-roottool/dependencies.d/init-services b/Docker/s6-overlay/s6-rc.d/svc-nx-roottool/dependencies.d/init-services similarity index 100% rename from LSIO/etc/s6-overlay/s6-rc.d/svc-nx-roottool/dependencies.d/init-services rename to Docker/s6-overlay/s6-rc.d/svc-nx-roottool/dependencies.d/init-services diff --git a/LSIO/etc/s6-overlay/s6-rc.d/svc-nx-roottool/run b/Docker/s6-overlay/s6-rc.d/svc-nx-roottool/run similarity index 100% rename from LSIO/etc/s6-overlay/s6-rc.d/svc-nx-roottool/run rename to Docker/s6-overlay/s6-rc.d/svc-nx-roottool/run diff --git a/LSIO/etc/s6-overlay/s6-rc.d/svc-nx-roottool/type b/Docker/s6-overlay/s6-rc.d/svc-nx-roottool/type similarity index 100% rename from LSIO/etc/s6-overlay/s6-rc.d/svc-nx-roottool/type rename to Docker/s6-overlay/s6-rc.d/svc-nx-roottool/type diff --git a/LSIO/etc/s6-overlay/s6-rc.d/user/contents.d/init-nx-permissions b/Docker/s6-overlay/s6-rc.d/user/contents.d/init-nx-permissions similarity index 100% rename from LSIO/etc/s6-overlay/s6-rc.d/user/contents.d/init-nx-permissions rename to Docker/s6-overlay/s6-rc.d/user/contents.d/init-nx-permissions diff --git a/LSIO/etc/s6-overlay/s6-rc.d/user/contents.d/init-nx-relocate b/Docker/s6-overlay/s6-rc.d/user/contents.d/init-nx-relocate similarity index 100% rename from LSIO/etc/s6-overlay/s6-rc.d/user/contents.d/init-nx-relocate rename to Docker/s6-overlay/s6-rc.d/user/contents.d/init-nx-relocate diff --git a/LSIO/etc/s6-overlay/s6-rc.d/user/contents.d/svc-nx-mediaserver b/Docker/s6-overlay/s6-rc.d/user/contents.d/svc-nx-mediaserver similarity index 100% rename from LSIO/etc/s6-overlay/s6-rc.d/user/contents.d/svc-nx-mediaserver rename to Docker/s6-overlay/s6-rc.d/user/contents.d/svc-nx-mediaserver diff --git a/LSIO/etc/s6-overlay/s6-rc.d/user/contents.d/svc-nx-roottool b/Docker/s6-overlay/s6-rc.d/user/contents.d/svc-nx-roottool similarity index 100% rename from LSIO/etc/s6-overlay/s6-rc.d/user/contents.d/svc-nx-roottool rename to Docker/s6-overlay/s6-rc.d/user/contents.d/svc-nx-roottool From 8ded7f2da2089e0cad68c29dac451d504fc9e149 Mon Sep 17 00:00:00 2001 From: Pieter Viljoen Date: Wed, 13 Mar 2024 23:53:42 +0000 Subject: [PATCH 5/8] Restructure --- Docker/DWSpectrum-LSIO/.dockerignore | 28 -------- Docker/DWSpectrum-LSIO/Download.sh | 37 ---------- .../dependencies.d/init-nx-permissions | 0 .../dependencies.d/init-nx-relocate | 0 .../s6-rc.d/init-nx-permissions/run | 36 ---------- .../s6-rc.d/init-nx-permissions/type | 1 - .../s6-overlay/s6-rc.d/init-nx-permissions/up | 1 - .../dependencies.d/init-nx-permissions | 0 .../s6-overlay/s6-rc.d/init-nx-relocate/run | 71 ------------------- .../s6-overlay/s6-rc.d/init-nx-relocate/type | 1 - .../s6-overlay/s6-rc.d/init-nx-relocate/up | 1 - .../dependencies.d/init-services | 0 .../dependencies.d/svc-nx-roottool | 0 .../s6-overlay/s6-rc.d/svc-nx-mediaserver/run | 8 --- .../s6-rc.d/svc-nx-mediaserver/type | 1 - .../dependencies.d/init-services | 0 .../s6-overlay/s6-rc.d/svc-nx-roottool/run | 6 -- .../s6-overlay/s6-rc.d/svc-nx-roottool/type | 1 - .../user/contents.d/init-nx-permissions | 0 .../s6-rc.d/user/contents.d/init-nx-relocate | 0 .../user/contents.d/svc-nx-mediaserver | 0 .../s6-rc.d/user/contents.d/svc-nx-roottool | 0 Docker/DWSpectrum/.dockerignore | 28 -------- Docker/DWSpectrum/Download.sh | 37 ---------- Docker/DWSpectrum/root/entrypoint.sh | 9 --- Docker/NxMeta-LSIO/.dockerignore | 28 -------- Docker/NxMeta-LSIO/Download.sh | 37 ---------- .../dependencies.d/init-nx-permissions | 0 .../dependencies.d/init-nx-relocate | 0 .../s6-rc.d/init-nx-permissions/run | 36 ---------- .../s6-rc.d/init-nx-permissions/type | 1 - .../s6-overlay/s6-rc.d/init-nx-permissions/up | 1 - .../dependencies.d/init-nx-permissions | 0 .../s6-overlay/s6-rc.d/init-nx-relocate/run | 71 ------------------- .../s6-overlay/s6-rc.d/init-nx-relocate/type | 1 - .../s6-overlay/s6-rc.d/init-nx-relocate/up | 1 - .../dependencies.d/init-services | 0 .../dependencies.d/svc-nx-roottool | 0 .../s6-overlay/s6-rc.d/svc-nx-mediaserver/run | 8 --- .../s6-rc.d/svc-nx-mediaserver/type | 1 - .../dependencies.d/init-services | 0 .../s6-overlay/s6-rc.d/svc-nx-roottool/run | 6 -- .../s6-overlay/s6-rc.d/svc-nx-roottool/type | 1 - .../user/contents.d/init-nx-permissions | 0 .../s6-rc.d/user/contents.d/init-nx-relocate | 0 .../user/contents.d/svc-nx-mediaserver | 0 .../s6-rc.d/user/contents.d/svc-nx-roottool | 0 Docker/NxMeta/.dockerignore | 28 -------- Docker/NxMeta/Download.sh | 37 ---------- Docker/NxMeta/root/entrypoint.sh | 9 --- Docker/NxWitness-LSIO/.dockerignore | 28 -------- Docker/NxWitness-LSIO/Download.sh | 37 ---------- .../dependencies.d/init-nx-permissions | 0 .../dependencies.d/init-nx-relocate | 0 .../s6-rc.d/init-nx-permissions/run | 36 ---------- .../s6-rc.d/init-nx-permissions/type | 1 - .../s6-overlay/s6-rc.d/init-nx-permissions/up | 1 - .../dependencies.d/init-nx-permissions | 0 .../s6-overlay/s6-rc.d/init-nx-relocate/run | 71 ------------------- .../s6-overlay/s6-rc.d/init-nx-relocate/type | 1 - .../s6-overlay/s6-rc.d/init-nx-relocate/up | 1 - .../dependencies.d/init-services | 0 .../dependencies.d/svc-nx-roottool | 0 .../s6-overlay/s6-rc.d/svc-nx-mediaserver/run | 8 --- .../s6-rc.d/svc-nx-mediaserver/type | 1 - .../dependencies.d/init-services | 0 .../s6-overlay/s6-rc.d/svc-nx-roottool/run | 6 -- .../s6-overlay/s6-rc.d/svc-nx-roottool/type | 1 - .../user/contents.d/init-nx-permissions | 0 .../s6-rc.d/user/contents.d/init-nx-relocate | 0 .../user/contents.d/svc-nx-mediaserver | 0 .../s6-rc.d/user/contents.d/svc-nx-roottool | 0 Docker/NxWitness/.dockerignore | 28 -------- Docker/NxWitness/Download.sh | 37 ---------- Docker/NxWitness/root/entrypoint.sh | 9 --- 75 files changed, 798 deletions(-) delete mode 100644 Docker/DWSpectrum-LSIO/.dockerignore delete mode 100644 Docker/DWSpectrum-LSIO/Download.sh delete mode 100644 Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/init-config-end/dependencies.d/init-nx-permissions delete mode 100644 Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/init-config-end/dependencies.d/init-nx-relocate delete mode 100755 Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-permissions/run delete mode 100644 Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-permissions/type delete mode 100644 Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-permissions/up delete mode 100644 Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/dependencies.d/init-nx-permissions delete mode 100755 Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/run delete mode 100644 Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/type delete mode 100644 Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/up delete mode 100644 Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/dependencies.d/init-services delete mode 100644 Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/dependencies.d/svc-nx-roottool delete mode 100755 Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/run delete mode 100644 Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/type delete mode 100644 Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-roottool/dependencies.d/init-services delete mode 100755 Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-roottool/run delete mode 100644 Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-roottool/type delete mode 100644 Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-nx-permissions delete mode 100644 Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-nx-relocate delete mode 100644 Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/user/contents.d/svc-nx-mediaserver delete mode 100644 Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/user/contents.d/svc-nx-roottool delete mode 100644 Docker/DWSpectrum/.dockerignore delete mode 100644 Docker/DWSpectrum/Download.sh delete mode 100755 Docker/DWSpectrum/root/entrypoint.sh delete mode 100644 Docker/NxMeta-LSIO/.dockerignore delete mode 100644 Docker/NxMeta-LSIO/Download.sh delete mode 100644 Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/init-config-end/dependencies.d/init-nx-permissions delete mode 100644 Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/init-config-end/dependencies.d/init-nx-relocate delete mode 100755 Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-permissions/run delete mode 100644 Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-permissions/type delete mode 100644 Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-permissions/up delete mode 100644 Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/dependencies.d/init-nx-permissions delete mode 100755 Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/run delete mode 100644 Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/type delete mode 100644 Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/up delete mode 100644 Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/dependencies.d/init-services delete mode 100644 Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/dependencies.d/svc-nx-roottool delete mode 100755 Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/run delete mode 100644 Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/type delete mode 100644 Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-roottool/dependencies.d/init-services delete mode 100755 Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-roottool/run delete mode 100644 Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-roottool/type delete mode 100644 Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-nx-permissions delete mode 100644 Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-nx-relocate delete mode 100644 Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/user/contents.d/svc-nx-mediaserver delete mode 100644 Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/user/contents.d/svc-nx-roottool delete mode 100644 Docker/NxMeta/.dockerignore delete mode 100644 Docker/NxMeta/Download.sh delete mode 100755 Docker/NxMeta/root/entrypoint.sh delete mode 100644 Docker/NxWitness-LSIO/.dockerignore delete mode 100644 Docker/NxWitness-LSIO/Download.sh delete mode 100644 Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/init-config-end/dependencies.d/init-nx-permissions delete mode 100644 Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/init-config-end/dependencies.d/init-nx-relocate delete mode 100755 Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-permissions/run delete mode 100644 Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-permissions/type delete mode 100644 Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-permissions/up delete mode 100644 Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/dependencies.d/init-nx-permissions delete mode 100755 Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/run delete mode 100644 Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/type delete mode 100644 Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/up delete mode 100644 Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/dependencies.d/init-services delete mode 100644 Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/dependencies.d/svc-nx-roottool delete mode 100755 Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/run delete mode 100644 Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/type delete mode 100644 Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-roottool/dependencies.d/init-services delete mode 100755 Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-roottool/run delete mode 100644 Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-roottool/type delete mode 100644 Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-nx-permissions delete mode 100644 Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-nx-relocate delete mode 100644 Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/user/contents.d/svc-nx-mediaserver delete mode 100644 Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/user/contents.d/svc-nx-roottool delete mode 100644 Docker/NxWitness/.dockerignore delete mode 100644 Docker/NxWitness/Download.sh delete mode 100755 Docker/NxWitness/root/entrypoint.sh diff --git a/Docker/DWSpectrum-LSIO/.dockerignore b/Docker/DWSpectrum-LSIO/.dockerignore deleted file mode 100644 index 0b4fece..0000000 --- a/Docker/DWSpectrum-LSIO/.dockerignore +++ /dev/null @@ -1,28 +0,0 @@ -**/.mount -**/vms_server_mod -**/vms_server_orig -**/.classpath -**/.dockerignore -**/.env -**/.git -**/.gitignore -**/.project -**/.settings -**/.toolstarget -**/.vs -**/.vscode -**/*.*proj.user -**/*.dbmdl -**/*.jfm -**/azds.yaml -**/bin -**/charts -**/docker-compose* -**/Dockerfile* -**/node_modules -**/npm-debug.log -**/obj -**/secrets.dev.yaml -**/values.dev.yaml -LICENSE -README.md diff --git a/Docker/DWSpectrum-LSIO/Download.sh b/Docker/DWSpectrum-LSIO/Download.sh deleted file mode 100644 index b80459e..0000000 --- a/Docker/DWSpectrum-LSIO/Download.sh +++ /dev/null @@ -1,37 +0,0 @@ -#!/bin/bash - -# Installer expected filename -DEB_FILE="./vms_server.deb" - -# Use X64 or ARM64 URL -DOWNLOAD_URL=${DOWNLOAD_X64_URL} -if [ "${TARGETPLATFORM}" == "linux/arm64" ]; then - DOWNLOAD_URL=${DOWNLOAD_ARM64_URL}; - fi - -# Get the filename fom the URL -echo "Download URL: ${DOWNLOAD_URL}" -DOWNLOAD_FILENAME=$(basename "$DOWNLOAD_URL") -echo "Download Filename: ${DOWNLOAD_FILENAME}" - -# Download the file -wget --no-verbose ${DOWNLOAD_URL} - -# Test if the filename is a DEB file or a ZIP file -if [ "${DOWNLOAD_FILENAME: -4}" == ".zip" ] -then - echo "Downloaded ZIP: ${DOWNLOAD_FILENAME}" - # Extract the zip contents - unzip -d ./download_zip ${DOWNLOAD_FILENAME} - # The DEB file is not always the same name as the ZIP file, get the DEB filename - DEB_FILES=( ./download_zip/*.deb ) - DEB_ZIP_FILE=${DEB_FILES[0]} - echo "DEB in ZIP: ${DEB_ZIP_FILE}" - # Copy - cp ${DEB_ZIP_FILE} ${DEB_FILE} -else - echo "Downloaded DEB: ${DOWNLOAD_FILENAME}" - # Copy - cp ${DOWNLOAD_FILENAME} ./vms_server.deb -fi -echo "DEB File: ${DEB_FILE}" diff --git a/Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/init-config-end/dependencies.d/init-nx-permissions b/Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/init-config-end/dependencies.d/init-nx-permissions deleted file mode 100644 index e69de29..0000000 diff --git a/Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/init-config-end/dependencies.d/init-nx-relocate b/Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/init-config-end/dependencies.d/init-nx-relocate deleted file mode 100644 index e69de29..0000000 diff --git a/Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-permissions/run b/Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-permissions/run deleted file mode 100755 index fd484af..0000000 --- a/Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-permissions/run +++ /dev/null @@ -1,36 +0,0 @@ -#!/usr/bin/with-contenv bash - -### Set directory ownership permissions -echo "init-nx-permissions : COMPANY_NAME = ${COMPANY_NAME}" - -# Test for current owner and only change if not currently owned by ${COMPANY_NAME} -# Blindly changing permissions on many files takes too long -# If files previously existed the permissions may have to be manually corrected - -# /config (recursive) -if [[ ! "$(stat -c %U /config)" = "${COMPANY_NAME}" ]] -then - echo "Changing ownership on /config" - chown --verbose --recursive ${COMPANY_NAME}:${COMPANY_NAME} /config -fi - -# /media (recursive) -if [[ ! "$(stat -c %U /media)" = "${COMPANY_NAME}" ]] -then - echo "Changing ownership on /media" - chown --verbose --recursive ${COMPANY_NAME}:${COMPANY_NAME} /media -fi - -# /opt/${COMPANY_NAME}/mediaserver/bin -if [[ ! "$(stat -c %U /opt/${COMPANY_NAME}/mediaserver/bin)" = "${COMPANY_NAME}" ]] -then - echo "Changing ownership on ../mediaserver/bin" - chown --verbose ${COMPANY_NAME}:${COMPANY_NAME} /opt/${COMPANY_NAME}/mediaserver/bin -fi - -# /opt/${COMPANY_NAME}/mediaserver/bin/external.dat -if [[ ! "$(stat -c %U /opt/${COMPANY_NAME}/mediaserver/bin/external.dat)" = "${COMPANY_NAME}" ]] -then - echo "Changing ownership on ../mediaserver/bin/external.dat" - chown --verbose ${COMPANY_NAME}:${COMPANY_NAME} /opt/${COMPANY_NAME}/mediaserver/bin/external.dat -fi diff --git a/Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-permissions/type b/Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-permissions/type deleted file mode 100644 index 3d92b15..0000000 --- a/Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-permissions/type +++ /dev/null @@ -1 +0,0 @@ -oneshot \ No newline at end of file diff --git a/Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-permissions/up b/Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-permissions/up deleted file mode 100644 index f80e49f..0000000 --- a/Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-permissions/up +++ /dev/null @@ -1 +0,0 @@ -/etc/s6-overlay/s6-rc.d/init-nx-permissions/run \ No newline at end of file diff --git a/Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/dependencies.d/init-nx-permissions b/Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/dependencies.d/init-nx-permissions deleted file mode 100644 index e69de29..0000000 diff --git a/Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/run b/Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/run deleted file mode 100755 index 4a2d2a5..0000000 --- a/Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/run +++ /dev/null @@ -1,71 +0,0 @@ -#!/usr/bin/with-contenv bash - -### Relocate and link files and directories -echo "init-nx-relocate : COMPANY_NAME = ${COMPANY_NAME}" - -# Make sure that /config/var exists -if [[ ! -d /config/var ]] -then - echo "/config/var does not exist, creating" - mkdir -p /config/var - chown --verbose --recursive ${COMPANY_NAME}:${COMPANY_NAME} /config/var -fi - -# Make sure that /config/etc exists -if [[ ! -d /config/etc ]] -then - echo "/config/etc does not exist, creating" - mkdir -p /config/etc - chown --verbose --recursive ${COMPANY_NAME}:${COMPANY_NAME} /config/etc -fi - -# Make sure that /config/ini exists -if [[ ! -d /config/ini ]] -then - echo "/config/ini does not exist, creating" - mkdir -p /config/ini - chown --verbose --recursive ${COMPANY_NAME}:${COMPANY_NAME} /config/ini -fi - -# Make sure that /root/.config/nx_ini exists -if [[ ! -d /root/.config/nx_ini ]] -then - echo "/root/.config/nx_ini does not exist, creating" - mkdir -p /root/.config/nx_ini - chown --verbose --recursive ${COMPANY_NAME}:${COMPANY_NAME} /root/.config/nx_ini -fi - -# Make sure that ../mediaserver/var links to /config/var -if [[ ! -h /opt/${COMPANY_NAME}/mediaserver/var ]] -then - echo "../mediaserver/var is not a link, linking" - rm -rf /opt/${COMPANY_NAME}/mediaserver/var - ln -s /config/var /opt/${COMPANY_NAME}/mediaserver/var - chown --verbose --no-dereference ${COMPANY_NAME}:${COMPANY_NAME} /opt/${COMPANY_NAME}/mediaserver/var -fi - -# Make sure that ../mediaserver/etc links to /config/etc -if [[ ! -h /opt/${COMPANY_NAME}/mediaserver/etc ]] -then - echo "../mediaserver/etc is not a link, linking" - rm -rf /opt/${COMPANY_NAME}/mediaserver/etc - ln -s /config/etc /opt/${COMPANY_NAME}/mediaserver/etc - chown --verbose --no-dereference ${COMPANY_NAME}:${COMPANY_NAME} /opt/${COMPANY_NAME}/mediaserver/etc -fi - -# Make sure that /root/.config/nx_ini links to /config/ini -if [[ ! -h /root/.config/nx_ini ]] -then - echo "/root/.config/nx_ini is not a link, linking" - rm -rf /root/.config/nx_ini - ln -s /config/ini /root/.config/nx_ini - chown --verbose --no-dereference ${COMPANY_NAME}:${COMPANY_NAME} /root/.config/nx_ini -fi - -# Make sure that ../mediaserver/var/data does not exist -# TODO: Is this still required? -if [[ -d /opt/${COMPANY_NAME}/mediaserver/var/data ]] -then - echo "../mediaserver/var/data exists, deleting" - rm /opt/${COMPANY_NAME}/mediaserver/var/data -fi diff --git a/Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/type b/Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/type deleted file mode 100644 index 3d92b15..0000000 --- a/Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/type +++ /dev/null @@ -1 +0,0 @@ -oneshot \ No newline at end of file diff --git a/Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/up b/Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/up deleted file mode 100644 index 018b3a8..0000000 --- a/Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/up +++ /dev/null @@ -1 +0,0 @@ -/etc/s6-overlay/s6-rc.d/init-nx-relocate/run \ No newline at end of file diff --git a/Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/dependencies.d/init-services b/Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/dependencies.d/init-services deleted file mode 100644 index e69de29..0000000 diff --git a/Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/dependencies.d/svc-nx-roottool b/Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/dependencies.d/svc-nx-roottool deleted file mode 100644 index e69de29..0000000 diff --git a/Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/run b/Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/run deleted file mode 100755 index a8d6ce2..0000000 --- a/Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/run +++ /dev/null @@ -1,8 +0,0 @@ -#!/usr/bin/with-contenv bash - -# Run mediaserver as ${COMPANY_NAME} user -echo "Launching mediaserver" -exec s6-setuidgid ${COMPANY_NAME} /bin/bash -c '/opt/${COMPANY_NAME}/mediaserver/bin/mediaserver -e' - -# Run mediaserver as root user -# exec /opt/${COMPANY_NAME}/mediaserver/bin/mediaserver -e diff --git a/Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/type b/Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/type deleted file mode 100644 index 1780f9f..0000000 --- a/Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/type +++ /dev/null @@ -1 +0,0 @@ -longrun \ No newline at end of file diff --git a/Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-roottool/dependencies.d/init-services b/Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-roottool/dependencies.d/init-services deleted file mode 100644 index e69de29..0000000 diff --git a/Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-roottool/run b/Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-roottool/run deleted file mode 100755 index 6ffdaa9..0000000 --- a/Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-roottool/run +++ /dev/null @@ -1,6 +0,0 @@ -#!/usr/bin/with-contenv bash - -# Run root-tool as root -# The root-tool is required to get DMI information when not running mediaserver as root -echo "Launching root-tool" -exec /opt/${COMPANY_NAME}/mediaserver/bin/root-tool diff --git a/Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-roottool/type b/Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-roottool/type deleted file mode 100644 index 1780f9f..0000000 --- a/Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-roottool/type +++ /dev/null @@ -1 +0,0 @@ -longrun \ No newline at end of file diff --git a/Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-nx-permissions b/Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-nx-permissions deleted file mode 100644 index e69de29..0000000 diff --git a/Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-nx-relocate b/Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-nx-relocate deleted file mode 100644 index e69de29..0000000 diff --git a/Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/user/contents.d/svc-nx-mediaserver b/Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/user/contents.d/svc-nx-mediaserver deleted file mode 100644 index e69de29..0000000 diff --git a/Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/user/contents.d/svc-nx-roottool b/Docker/DWSpectrum-LSIO/root/etc/s6-overlay/s6-rc.d/user/contents.d/svc-nx-roottool deleted file mode 100644 index e69de29..0000000 diff --git a/Docker/DWSpectrum/.dockerignore b/Docker/DWSpectrum/.dockerignore deleted file mode 100644 index ff7fb1c..0000000 --- a/Docker/DWSpectrum/.dockerignore +++ /dev/null @@ -1,28 +0,0 @@ -**/.mount -**/vms_server_mod -**/vms_server_orig -**/.classpath -**/.dockerignore -**/.env -**/.git -**/.gitignore -**/.project -**/.settings -**/.toolstarget -**/.vs -**/.vscode -**/*.*proj.user -**/*.dbmdl -**/*.jfm -**/azds.yaml -**/bin -**/charts -**/docker-compose* -**/Dockerfile* -**/node_modules -**/npm-debug.log -**/obj -**/secrets.dev.yaml -**/values.dev.yaml -LICENSE -README.md \ No newline at end of file diff --git a/Docker/DWSpectrum/Download.sh b/Docker/DWSpectrum/Download.sh deleted file mode 100644 index b80459e..0000000 --- a/Docker/DWSpectrum/Download.sh +++ /dev/null @@ -1,37 +0,0 @@ -#!/bin/bash - -# Installer expected filename -DEB_FILE="./vms_server.deb" - -# Use X64 or ARM64 URL -DOWNLOAD_URL=${DOWNLOAD_X64_URL} -if [ "${TARGETPLATFORM}" == "linux/arm64" ]; then - DOWNLOAD_URL=${DOWNLOAD_ARM64_URL}; - fi - -# Get the filename fom the URL -echo "Download URL: ${DOWNLOAD_URL}" -DOWNLOAD_FILENAME=$(basename "$DOWNLOAD_URL") -echo "Download Filename: ${DOWNLOAD_FILENAME}" - -# Download the file -wget --no-verbose ${DOWNLOAD_URL} - -# Test if the filename is a DEB file or a ZIP file -if [ "${DOWNLOAD_FILENAME: -4}" == ".zip" ] -then - echo "Downloaded ZIP: ${DOWNLOAD_FILENAME}" - # Extract the zip contents - unzip -d ./download_zip ${DOWNLOAD_FILENAME} - # The DEB file is not always the same name as the ZIP file, get the DEB filename - DEB_FILES=( ./download_zip/*.deb ) - DEB_ZIP_FILE=${DEB_FILES[0]} - echo "DEB in ZIP: ${DEB_ZIP_FILE}" - # Copy - cp ${DEB_ZIP_FILE} ${DEB_FILE} -else - echo "Downloaded DEB: ${DOWNLOAD_FILENAME}" - # Copy - cp ${DOWNLOAD_FILENAME} ./vms_server.deb -fi -echo "DEB File: ${DEB_FILE}" diff --git a/Docker/DWSpectrum/root/entrypoint.sh b/Docker/DWSpectrum/root/entrypoint.sh deleted file mode 100755 index 90825e3..0000000 --- a/Docker/DWSpectrum/root/entrypoint.sh +++ /dev/null @@ -1,9 +0,0 @@ -#!/bin/bash - -# Launch the root-tool as root in the background using & -echo "Launching root-tool" -sudo /opt/${COMPANY_NAME}/mediaserver/bin/root-tool & - -# Launch the mediaserver using exec so it receives shutdown commands -echo "Launching mediaserver" -exec /opt/${COMPANY_NAME}/mediaserver/bin/mediaserver -e diff --git a/Docker/NxMeta-LSIO/.dockerignore b/Docker/NxMeta-LSIO/.dockerignore deleted file mode 100644 index 0b4fece..0000000 --- a/Docker/NxMeta-LSIO/.dockerignore +++ /dev/null @@ -1,28 +0,0 @@ -**/.mount -**/vms_server_mod -**/vms_server_orig -**/.classpath -**/.dockerignore -**/.env -**/.git -**/.gitignore -**/.project -**/.settings -**/.toolstarget -**/.vs -**/.vscode -**/*.*proj.user -**/*.dbmdl -**/*.jfm -**/azds.yaml -**/bin -**/charts -**/docker-compose* -**/Dockerfile* -**/node_modules -**/npm-debug.log -**/obj -**/secrets.dev.yaml -**/values.dev.yaml -LICENSE -README.md diff --git a/Docker/NxMeta-LSIO/Download.sh b/Docker/NxMeta-LSIO/Download.sh deleted file mode 100644 index b80459e..0000000 --- a/Docker/NxMeta-LSIO/Download.sh +++ /dev/null @@ -1,37 +0,0 @@ -#!/bin/bash - -# Installer expected filename -DEB_FILE="./vms_server.deb" - -# Use X64 or ARM64 URL -DOWNLOAD_URL=${DOWNLOAD_X64_URL} -if [ "${TARGETPLATFORM}" == "linux/arm64" ]; then - DOWNLOAD_URL=${DOWNLOAD_ARM64_URL}; - fi - -# Get the filename fom the URL -echo "Download URL: ${DOWNLOAD_URL}" -DOWNLOAD_FILENAME=$(basename "$DOWNLOAD_URL") -echo "Download Filename: ${DOWNLOAD_FILENAME}" - -# Download the file -wget --no-verbose ${DOWNLOAD_URL} - -# Test if the filename is a DEB file or a ZIP file -if [ "${DOWNLOAD_FILENAME: -4}" == ".zip" ] -then - echo "Downloaded ZIP: ${DOWNLOAD_FILENAME}" - # Extract the zip contents - unzip -d ./download_zip ${DOWNLOAD_FILENAME} - # The DEB file is not always the same name as the ZIP file, get the DEB filename - DEB_FILES=( ./download_zip/*.deb ) - DEB_ZIP_FILE=${DEB_FILES[0]} - echo "DEB in ZIP: ${DEB_ZIP_FILE}" - # Copy - cp ${DEB_ZIP_FILE} ${DEB_FILE} -else - echo "Downloaded DEB: ${DOWNLOAD_FILENAME}" - # Copy - cp ${DOWNLOAD_FILENAME} ./vms_server.deb -fi -echo "DEB File: ${DEB_FILE}" diff --git a/Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/init-config-end/dependencies.d/init-nx-permissions b/Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/init-config-end/dependencies.d/init-nx-permissions deleted file mode 100644 index e69de29..0000000 diff --git a/Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/init-config-end/dependencies.d/init-nx-relocate b/Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/init-config-end/dependencies.d/init-nx-relocate deleted file mode 100644 index e69de29..0000000 diff --git a/Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-permissions/run b/Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-permissions/run deleted file mode 100755 index fd484af..0000000 --- a/Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-permissions/run +++ /dev/null @@ -1,36 +0,0 @@ -#!/usr/bin/with-contenv bash - -### Set directory ownership permissions -echo "init-nx-permissions : COMPANY_NAME = ${COMPANY_NAME}" - -# Test for current owner and only change if not currently owned by ${COMPANY_NAME} -# Blindly changing permissions on many files takes too long -# If files previously existed the permissions may have to be manually corrected - -# /config (recursive) -if [[ ! "$(stat -c %U /config)" = "${COMPANY_NAME}" ]] -then - echo "Changing ownership on /config" - chown --verbose --recursive ${COMPANY_NAME}:${COMPANY_NAME} /config -fi - -# /media (recursive) -if [[ ! "$(stat -c %U /media)" = "${COMPANY_NAME}" ]] -then - echo "Changing ownership on /media" - chown --verbose --recursive ${COMPANY_NAME}:${COMPANY_NAME} /media -fi - -# /opt/${COMPANY_NAME}/mediaserver/bin -if [[ ! "$(stat -c %U /opt/${COMPANY_NAME}/mediaserver/bin)" = "${COMPANY_NAME}" ]] -then - echo "Changing ownership on ../mediaserver/bin" - chown --verbose ${COMPANY_NAME}:${COMPANY_NAME} /opt/${COMPANY_NAME}/mediaserver/bin -fi - -# /opt/${COMPANY_NAME}/mediaserver/bin/external.dat -if [[ ! "$(stat -c %U /opt/${COMPANY_NAME}/mediaserver/bin/external.dat)" = "${COMPANY_NAME}" ]] -then - echo "Changing ownership on ../mediaserver/bin/external.dat" - chown --verbose ${COMPANY_NAME}:${COMPANY_NAME} /opt/${COMPANY_NAME}/mediaserver/bin/external.dat -fi diff --git a/Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-permissions/type b/Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-permissions/type deleted file mode 100644 index 3d92b15..0000000 --- a/Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-permissions/type +++ /dev/null @@ -1 +0,0 @@ -oneshot \ No newline at end of file diff --git a/Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-permissions/up b/Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-permissions/up deleted file mode 100644 index f80e49f..0000000 --- a/Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-permissions/up +++ /dev/null @@ -1 +0,0 @@ -/etc/s6-overlay/s6-rc.d/init-nx-permissions/run \ No newline at end of file diff --git a/Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/dependencies.d/init-nx-permissions b/Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/dependencies.d/init-nx-permissions deleted file mode 100644 index e69de29..0000000 diff --git a/Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/run b/Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/run deleted file mode 100755 index 4a2d2a5..0000000 --- a/Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/run +++ /dev/null @@ -1,71 +0,0 @@ -#!/usr/bin/with-contenv bash - -### Relocate and link files and directories -echo "init-nx-relocate : COMPANY_NAME = ${COMPANY_NAME}" - -# Make sure that /config/var exists -if [[ ! -d /config/var ]] -then - echo "/config/var does not exist, creating" - mkdir -p /config/var - chown --verbose --recursive ${COMPANY_NAME}:${COMPANY_NAME} /config/var -fi - -# Make sure that /config/etc exists -if [[ ! -d /config/etc ]] -then - echo "/config/etc does not exist, creating" - mkdir -p /config/etc - chown --verbose --recursive ${COMPANY_NAME}:${COMPANY_NAME} /config/etc -fi - -# Make sure that /config/ini exists -if [[ ! -d /config/ini ]] -then - echo "/config/ini does not exist, creating" - mkdir -p /config/ini - chown --verbose --recursive ${COMPANY_NAME}:${COMPANY_NAME} /config/ini -fi - -# Make sure that /root/.config/nx_ini exists -if [[ ! -d /root/.config/nx_ini ]] -then - echo "/root/.config/nx_ini does not exist, creating" - mkdir -p /root/.config/nx_ini - chown --verbose --recursive ${COMPANY_NAME}:${COMPANY_NAME} /root/.config/nx_ini -fi - -# Make sure that ../mediaserver/var links to /config/var -if [[ ! -h /opt/${COMPANY_NAME}/mediaserver/var ]] -then - echo "../mediaserver/var is not a link, linking" - rm -rf /opt/${COMPANY_NAME}/mediaserver/var - ln -s /config/var /opt/${COMPANY_NAME}/mediaserver/var - chown --verbose --no-dereference ${COMPANY_NAME}:${COMPANY_NAME} /opt/${COMPANY_NAME}/mediaserver/var -fi - -# Make sure that ../mediaserver/etc links to /config/etc -if [[ ! -h /opt/${COMPANY_NAME}/mediaserver/etc ]] -then - echo "../mediaserver/etc is not a link, linking" - rm -rf /opt/${COMPANY_NAME}/mediaserver/etc - ln -s /config/etc /opt/${COMPANY_NAME}/mediaserver/etc - chown --verbose --no-dereference ${COMPANY_NAME}:${COMPANY_NAME} /opt/${COMPANY_NAME}/mediaserver/etc -fi - -# Make sure that /root/.config/nx_ini links to /config/ini -if [[ ! -h /root/.config/nx_ini ]] -then - echo "/root/.config/nx_ini is not a link, linking" - rm -rf /root/.config/nx_ini - ln -s /config/ini /root/.config/nx_ini - chown --verbose --no-dereference ${COMPANY_NAME}:${COMPANY_NAME} /root/.config/nx_ini -fi - -# Make sure that ../mediaserver/var/data does not exist -# TODO: Is this still required? -if [[ -d /opt/${COMPANY_NAME}/mediaserver/var/data ]] -then - echo "../mediaserver/var/data exists, deleting" - rm /opt/${COMPANY_NAME}/mediaserver/var/data -fi diff --git a/Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/type b/Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/type deleted file mode 100644 index 3d92b15..0000000 --- a/Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/type +++ /dev/null @@ -1 +0,0 @@ -oneshot \ No newline at end of file diff --git a/Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/up b/Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/up deleted file mode 100644 index 018b3a8..0000000 --- a/Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/up +++ /dev/null @@ -1 +0,0 @@ -/etc/s6-overlay/s6-rc.d/init-nx-relocate/run \ No newline at end of file diff --git a/Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/dependencies.d/init-services b/Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/dependencies.d/init-services deleted file mode 100644 index e69de29..0000000 diff --git a/Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/dependencies.d/svc-nx-roottool b/Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/dependencies.d/svc-nx-roottool deleted file mode 100644 index e69de29..0000000 diff --git a/Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/run b/Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/run deleted file mode 100755 index a8d6ce2..0000000 --- a/Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/run +++ /dev/null @@ -1,8 +0,0 @@ -#!/usr/bin/with-contenv bash - -# Run mediaserver as ${COMPANY_NAME} user -echo "Launching mediaserver" -exec s6-setuidgid ${COMPANY_NAME} /bin/bash -c '/opt/${COMPANY_NAME}/mediaserver/bin/mediaserver -e' - -# Run mediaserver as root user -# exec /opt/${COMPANY_NAME}/mediaserver/bin/mediaserver -e diff --git a/Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/type b/Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/type deleted file mode 100644 index 1780f9f..0000000 --- a/Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/type +++ /dev/null @@ -1 +0,0 @@ -longrun \ No newline at end of file diff --git a/Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-roottool/dependencies.d/init-services b/Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-roottool/dependencies.d/init-services deleted file mode 100644 index e69de29..0000000 diff --git a/Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-roottool/run b/Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-roottool/run deleted file mode 100755 index 6ffdaa9..0000000 --- a/Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-roottool/run +++ /dev/null @@ -1,6 +0,0 @@ -#!/usr/bin/with-contenv bash - -# Run root-tool as root -# The root-tool is required to get DMI information when not running mediaserver as root -echo "Launching root-tool" -exec /opt/${COMPANY_NAME}/mediaserver/bin/root-tool diff --git a/Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-roottool/type b/Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-roottool/type deleted file mode 100644 index 1780f9f..0000000 --- a/Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-roottool/type +++ /dev/null @@ -1 +0,0 @@ -longrun \ No newline at end of file diff --git a/Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-nx-permissions b/Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-nx-permissions deleted file mode 100644 index e69de29..0000000 diff --git a/Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-nx-relocate b/Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-nx-relocate deleted file mode 100644 index e69de29..0000000 diff --git a/Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/user/contents.d/svc-nx-mediaserver b/Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/user/contents.d/svc-nx-mediaserver deleted file mode 100644 index e69de29..0000000 diff --git a/Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/user/contents.d/svc-nx-roottool b/Docker/NxMeta-LSIO/root/etc/s6-overlay/s6-rc.d/user/contents.d/svc-nx-roottool deleted file mode 100644 index e69de29..0000000 diff --git a/Docker/NxMeta/.dockerignore b/Docker/NxMeta/.dockerignore deleted file mode 100644 index 0b4fece..0000000 --- a/Docker/NxMeta/.dockerignore +++ /dev/null @@ -1,28 +0,0 @@ -**/.mount -**/vms_server_mod -**/vms_server_orig -**/.classpath -**/.dockerignore -**/.env -**/.git -**/.gitignore -**/.project -**/.settings -**/.toolstarget -**/.vs -**/.vscode -**/*.*proj.user -**/*.dbmdl -**/*.jfm -**/azds.yaml -**/bin -**/charts -**/docker-compose* -**/Dockerfile* -**/node_modules -**/npm-debug.log -**/obj -**/secrets.dev.yaml -**/values.dev.yaml -LICENSE -README.md diff --git a/Docker/NxMeta/Download.sh b/Docker/NxMeta/Download.sh deleted file mode 100644 index b80459e..0000000 --- a/Docker/NxMeta/Download.sh +++ /dev/null @@ -1,37 +0,0 @@ -#!/bin/bash - -# Installer expected filename -DEB_FILE="./vms_server.deb" - -# Use X64 or ARM64 URL -DOWNLOAD_URL=${DOWNLOAD_X64_URL} -if [ "${TARGETPLATFORM}" == "linux/arm64" ]; then - DOWNLOAD_URL=${DOWNLOAD_ARM64_URL}; - fi - -# Get the filename fom the URL -echo "Download URL: ${DOWNLOAD_URL}" -DOWNLOAD_FILENAME=$(basename "$DOWNLOAD_URL") -echo "Download Filename: ${DOWNLOAD_FILENAME}" - -# Download the file -wget --no-verbose ${DOWNLOAD_URL} - -# Test if the filename is a DEB file or a ZIP file -if [ "${DOWNLOAD_FILENAME: -4}" == ".zip" ] -then - echo "Downloaded ZIP: ${DOWNLOAD_FILENAME}" - # Extract the zip contents - unzip -d ./download_zip ${DOWNLOAD_FILENAME} - # The DEB file is not always the same name as the ZIP file, get the DEB filename - DEB_FILES=( ./download_zip/*.deb ) - DEB_ZIP_FILE=${DEB_FILES[0]} - echo "DEB in ZIP: ${DEB_ZIP_FILE}" - # Copy - cp ${DEB_ZIP_FILE} ${DEB_FILE} -else - echo "Downloaded DEB: ${DOWNLOAD_FILENAME}" - # Copy - cp ${DOWNLOAD_FILENAME} ./vms_server.deb -fi -echo "DEB File: ${DEB_FILE}" diff --git a/Docker/NxMeta/root/entrypoint.sh b/Docker/NxMeta/root/entrypoint.sh deleted file mode 100755 index 90825e3..0000000 --- a/Docker/NxMeta/root/entrypoint.sh +++ /dev/null @@ -1,9 +0,0 @@ -#!/bin/bash - -# Launch the root-tool as root in the background using & -echo "Launching root-tool" -sudo /opt/${COMPANY_NAME}/mediaserver/bin/root-tool & - -# Launch the mediaserver using exec so it receives shutdown commands -echo "Launching mediaserver" -exec /opt/${COMPANY_NAME}/mediaserver/bin/mediaserver -e diff --git a/Docker/NxWitness-LSIO/.dockerignore b/Docker/NxWitness-LSIO/.dockerignore deleted file mode 100644 index 0b4fece..0000000 --- a/Docker/NxWitness-LSIO/.dockerignore +++ /dev/null @@ -1,28 +0,0 @@ -**/.mount -**/vms_server_mod -**/vms_server_orig -**/.classpath -**/.dockerignore -**/.env -**/.git -**/.gitignore -**/.project -**/.settings -**/.toolstarget -**/.vs -**/.vscode -**/*.*proj.user -**/*.dbmdl -**/*.jfm -**/azds.yaml -**/bin -**/charts -**/docker-compose* -**/Dockerfile* -**/node_modules -**/npm-debug.log -**/obj -**/secrets.dev.yaml -**/values.dev.yaml -LICENSE -README.md diff --git a/Docker/NxWitness-LSIO/Download.sh b/Docker/NxWitness-LSIO/Download.sh deleted file mode 100644 index b80459e..0000000 --- a/Docker/NxWitness-LSIO/Download.sh +++ /dev/null @@ -1,37 +0,0 @@ -#!/bin/bash - -# Installer expected filename -DEB_FILE="./vms_server.deb" - -# Use X64 or ARM64 URL -DOWNLOAD_URL=${DOWNLOAD_X64_URL} -if [ "${TARGETPLATFORM}" == "linux/arm64" ]; then - DOWNLOAD_URL=${DOWNLOAD_ARM64_URL}; - fi - -# Get the filename fom the URL -echo "Download URL: ${DOWNLOAD_URL}" -DOWNLOAD_FILENAME=$(basename "$DOWNLOAD_URL") -echo "Download Filename: ${DOWNLOAD_FILENAME}" - -# Download the file -wget --no-verbose ${DOWNLOAD_URL} - -# Test if the filename is a DEB file or a ZIP file -if [ "${DOWNLOAD_FILENAME: -4}" == ".zip" ] -then - echo "Downloaded ZIP: ${DOWNLOAD_FILENAME}" - # Extract the zip contents - unzip -d ./download_zip ${DOWNLOAD_FILENAME} - # The DEB file is not always the same name as the ZIP file, get the DEB filename - DEB_FILES=( ./download_zip/*.deb ) - DEB_ZIP_FILE=${DEB_FILES[0]} - echo "DEB in ZIP: ${DEB_ZIP_FILE}" - # Copy - cp ${DEB_ZIP_FILE} ${DEB_FILE} -else - echo "Downloaded DEB: ${DOWNLOAD_FILENAME}" - # Copy - cp ${DOWNLOAD_FILENAME} ./vms_server.deb -fi -echo "DEB File: ${DEB_FILE}" diff --git a/Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/init-config-end/dependencies.d/init-nx-permissions b/Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/init-config-end/dependencies.d/init-nx-permissions deleted file mode 100644 index e69de29..0000000 diff --git a/Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/init-config-end/dependencies.d/init-nx-relocate b/Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/init-config-end/dependencies.d/init-nx-relocate deleted file mode 100644 index e69de29..0000000 diff --git a/Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-permissions/run b/Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-permissions/run deleted file mode 100755 index fd484af..0000000 --- a/Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-permissions/run +++ /dev/null @@ -1,36 +0,0 @@ -#!/usr/bin/with-contenv bash - -### Set directory ownership permissions -echo "init-nx-permissions : COMPANY_NAME = ${COMPANY_NAME}" - -# Test for current owner and only change if not currently owned by ${COMPANY_NAME} -# Blindly changing permissions on many files takes too long -# If files previously existed the permissions may have to be manually corrected - -# /config (recursive) -if [[ ! "$(stat -c %U /config)" = "${COMPANY_NAME}" ]] -then - echo "Changing ownership on /config" - chown --verbose --recursive ${COMPANY_NAME}:${COMPANY_NAME} /config -fi - -# /media (recursive) -if [[ ! "$(stat -c %U /media)" = "${COMPANY_NAME}" ]] -then - echo "Changing ownership on /media" - chown --verbose --recursive ${COMPANY_NAME}:${COMPANY_NAME} /media -fi - -# /opt/${COMPANY_NAME}/mediaserver/bin -if [[ ! "$(stat -c %U /opt/${COMPANY_NAME}/mediaserver/bin)" = "${COMPANY_NAME}" ]] -then - echo "Changing ownership on ../mediaserver/bin" - chown --verbose ${COMPANY_NAME}:${COMPANY_NAME} /opt/${COMPANY_NAME}/mediaserver/bin -fi - -# /opt/${COMPANY_NAME}/mediaserver/bin/external.dat -if [[ ! "$(stat -c %U /opt/${COMPANY_NAME}/mediaserver/bin/external.dat)" = "${COMPANY_NAME}" ]] -then - echo "Changing ownership on ../mediaserver/bin/external.dat" - chown --verbose ${COMPANY_NAME}:${COMPANY_NAME} /opt/${COMPANY_NAME}/mediaserver/bin/external.dat -fi diff --git a/Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-permissions/type b/Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-permissions/type deleted file mode 100644 index 3d92b15..0000000 --- a/Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-permissions/type +++ /dev/null @@ -1 +0,0 @@ -oneshot \ No newline at end of file diff --git a/Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-permissions/up b/Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-permissions/up deleted file mode 100644 index f80e49f..0000000 --- a/Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-permissions/up +++ /dev/null @@ -1 +0,0 @@ -/etc/s6-overlay/s6-rc.d/init-nx-permissions/run \ No newline at end of file diff --git a/Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/dependencies.d/init-nx-permissions b/Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/dependencies.d/init-nx-permissions deleted file mode 100644 index e69de29..0000000 diff --git a/Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/run b/Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/run deleted file mode 100755 index 4a2d2a5..0000000 --- a/Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/run +++ /dev/null @@ -1,71 +0,0 @@ -#!/usr/bin/with-contenv bash - -### Relocate and link files and directories -echo "init-nx-relocate : COMPANY_NAME = ${COMPANY_NAME}" - -# Make sure that /config/var exists -if [[ ! -d /config/var ]] -then - echo "/config/var does not exist, creating" - mkdir -p /config/var - chown --verbose --recursive ${COMPANY_NAME}:${COMPANY_NAME} /config/var -fi - -# Make sure that /config/etc exists -if [[ ! -d /config/etc ]] -then - echo "/config/etc does not exist, creating" - mkdir -p /config/etc - chown --verbose --recursive ${COMPANY_NAME}:${COMPANY_NAME} /config/etc -fi - -# Make sure that /config/ini exists -if [[ ! -d /config/ini ]] -then - echo "/config/ini does not exist, creating" - mkdir -p /config/ini - chown --verbose --recursive ${COMPANY_NAME}:${COMPANY_NAME} /config/ini -fi - -# Make sure that /root/.config/nx_ini exists -if [[ ! -d /root/.config/nx_ini ]] -then - echo "/root/.config/nx_ini does not exist, creating" - mkdir -p /root/.config/nx_ini - chown --verbose --recursive ${COMPANY_NAME}:${COMPANY_NAME} /root/.config/nx_ini -fi - -# Make sure that ../mediaserver/var links to /config/var -if [[ ! -h /opt/${COMPANY_NAME}/mediaserver/var ]] -then - echo "../mediaserver/var is not a link, linking" - rm -rf /opt/${COMPANY_NAME}/mediaserver/var - ln -s /config/var /opt/${COMPANY_NAME}/mediaserver/var - chown --verbose --no-dereference ${COMPANY_NAME}:${COMPANY_NAME} /opt/${COMPANY_NAME}/mediaserver/var -fi - -# Make sure that ../mediaserver/etc links to /config/etc -if [[ ! -h /opt/${COMPANY_NAME}/mediaserver/etc ]] -then - echo "../mediaserver/etc is not a link, linking" - rm -rf /opt/${COMPANY_NAME}/mediaserver/etc - ln -s /config/etc /opt/${COMPANY_NAME}/mediaserver/etc - chown --verbose --no-dereference ${COMPANY_NAME}:${COMPANY_NAME} /opt/${COMPANY_NAME}/mediaserver/etc -fi - -# Make sure that /root/.config/nx_ini links to /config/ini -if [[ ! -h /root/.config/nx_ini ]] -then - echo "/root/.config/nx_ini is not a link, linking" - rm -rf /root/.config/nx_ini - ln -s /config/ini /root/.config/nx_ini - chown --verbose --no-dereference ${COMPANY_NAME}:${COMPANY_NAME} /root/.config/nx_ini -fi - -# Make sure that ../mediaserver/var/data does not exist -# TODO: Is this still required? -if [[ -d /opt/${COMPANY_NAME}/mediaserver/var/data ]] -then - echo "../mediaserver/var/data exists, deleting" - rm /opt/${COMPANY_NAME}/mediaserver/var/data -fi diff --git a/Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/type b/Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/type deleted file mode 100644 index 3d92b15..0000000 --- a/Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/type +++ /dev/null @@ -1 +0,0 @@ -oneshot \ No newline at end of file diff --git a/Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/up b/Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/up deleted file mode 100644 index 018b3a8..0000000 --- a/Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/init-nx-relocate/up +++ /dev/null @@ -1 +0,0 @@ -/etc/s6-overlay/s6-rc.d/init-nx-relocate/run \ No newline at end of file diff --git a/Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/dependencies.d/init-services b/Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/dependencies.d/init-services deleted file mode 100644 index e69de29..0000000 diff --git a/Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/dependencies.d/svc-nx-roottool b/Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/dependencies.d/svc-nx-roottool deleted file mode 100644 index e69de29..0000000 diff --git a/Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/run b/Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/run deleted file mode 100755 index a8d6ce2..0000000 --- a/Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/run +++ /dev/null @@ -1,8 +0,0 @@ -#!/usr/bin/with-contenv bash - -# Run mediaserver as ${COMPANY_NAME} user -echo "Launching mediaserver" -exec s6-setuidgid ${COMPANY_NAME} /bin/bash -c '/opt/${COMPANY_NAME}/mediaserver/bin/mediaserver -e' - -# Run mediaserver as root user -# exec /opt/${COMPANY_NAME}/mediaserver/bin/mediaserver -e diff --git a/Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/type b/Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/type deleted file mode 100644 index 1780f9f..0000000 --- a/Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-mediaserver/type +++ /dev/null @@ -1 +0,0 @@ -longrun \ No newline at end of file diff --git a/Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-roottool/dependencies.d/init-services b/Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-roottool/dependencies.d/init-services deleted file mode 100644 index e69de29..0000000 diff --git a/Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-roottool/run b/Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-roottool/run deleted file mode 100755 index 6ffdaa9..0000000 --- a/Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-roottool/run +++ /dev/null @@ -1,6 +0,0 @@ -#!/usr/bin/with-contenv bash - -# Run root-tool as root -# The root-tool is required to get DMI information when not running mediaserver as root -echo "Launching root-tool" -exec /opt/${COMPANY_NAME}/mediaserver/bin/root-tool diff --git a/Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-roottool/type b/Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-roottool/type deleted file mode 100644 index 1780f9f..0000000 --- a/Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/svc-nx-roottool/type +++ /dev/null @@ -1 +0,0 @@ -longrun \ No newline at end of file diff --git a/Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-nx-permissions b/Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-nx-permissions deleted file mode 100644 index e69de29..0000000 diff --git a/Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-nx-relocate b/Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-nx-relocate deleted file mode 100644 index e69de29..0000000 diff --git a/Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/user/contents.d/svc-nx-mediaserver b/Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/user/contents.d/svc-nx-mediaserver deleted file mode 100644 index e69de29..0000000 diff --git a/Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/user/contents.d/svc-nx-roottool b/Docker/NxWitness-LSIO/root/etc/s6-overlay/s6-rc.d/user/contents.d/svc-nx-roottool deleted file mode 100644 index e69de29..0000000 diff --git a/Docker/NxWitness/.dockerignore b/Docker/NxWitness/.dockerignore deleted file mode 100644 index 0b4fece..0000000 --- a/Docker/NxWitness/.dockerignore +++ /dev/null @@ -1,28 +0,0 @@ -**/.mount -**/vms_server_mod -**/vms_server_orig -**/.classpath -**/.dockerignore -**/.env -**/.git -**/.gitignore -**/.project -**/.settings -**/.toolstarget -**/.vs -**/.vscode -**/*.*proj.user -**/*.dbmdl -**/*.jfm -**/azds.yaml -**/bin -**/charts -**/docker-compose* -**/Dockerfile* -**/node_modules -**/npm-debug.log -**/obj -**/secrets.dev.yaml -**/values.dev.yaml -LICENSE -README.md diff --git a/Docker/NxWitness/Download.sh b/Docker/NxWitness/Download.sh deleted file mode 100644 index b80459e..0000000 --- a/Docker/NxWitness/Download.sh +++ /dev/null @@ -1,37 +0,0 @@ -#!/bin/bash - -# Installer expected filename -DEB_FILE="./vms_server.deb" - -# Use X64 or ARM64 URL -DOWNLOAD_URL=${DOWNLOAD_X64_URL} -if [ "${TARGETPLATFORM}" == "linux/arm64" ]; then - DOWNLOAD_URL=${DOWNLOAD_ARM64_URL}; - fi - -# Get the filename fom the URL -echo "Download URL: ${DOWNLOAD_URL}" -DOWNLOAD_FILENAME=$(basename "$DOWNLOAD_URL") -echo "Download Filename: ${DOWNLOAD_FILENAME}" - -# Download the file -wget --no-verbose ${DOWNLOAD_URL} - -# Test if the filename is a DEB file or a ZIP file -if [ "${DOWNLOAD_FILENAME: -4}" == ".zip" ] -then - echo "Downloaded ZIP: ${DOWNLOAD_FILENAME}" - # Extract the zip contents - unzip -d ./download_zip ${DOWNLOAD_FILENAME} - # The DEB file is not always the same name as the ZIP file, get the DEB filename - DEB_FILES=( ./download_zip/*.deb ) - DEB_ZIP_FILE=${DEB_FILES[0]} - echo "DEB in ZIP: ${DEB_ZIP_FILE}" - # Copy - cp ${DEB_ZIP_FILE} ${DEB_FILE} -else - echo "Downloaded DEB: ${DOWNLOAD_FILENAME}" - # Copy - cp ${DOWNLOAD_FILENAME} ./vms_server.deb -fi -echo "DEB File: ${DEB_FILE}" diff --git a/Docker/NxWitness/root/entrypoint.sh b/Docker/NxWitness/root/entrypoint.sh deleted file mode 100755 index 90825e3..0000000 --- a/Docker/NxWitness/root/entrypoint.sh +++ /dev/null @@ -1,9 +0,0 @@ -#!/bin/bash - -# Launch the root-tool as root in the background using & -echo "Launching root-tool" -sudo /opt/${COMPANY_NAME}/mediaserver/bin/root-tool & - -# Launch the mediaserver using exec so it receives shutdown commands -echo "Launching mediaserver" -exec /opt/${COMPANY_NAME}/mediaserver/bin/mediaserver -e From 539c6ec12cd47aae64ff795de2366f93e1575998 Mon Sep 17 00:00:00 2001 From: Pieter Viljoen Date: Thu, 14 Mar 2024 14:27:28 +0000 Subject: [PATCH 6/8] Convert Makefile to shell scripts --- Docker/DWSpectrum-LSIO.Dockerfile | 8 +- Docker/DWSpectrum.Dockerfile | 8 +- Docker/NXMeta.Dockerfile | 0 Docker/NxMeta-LSIO.Dockerfile | 8 +- Docker/NxMeta.Dockerfile | 8 +- Docker/NxWitness-LSIO.Dockerfile | 8 +- Docker/NxWitness.Dockerfile | 8 +- Make/Build.sh | 60 +++++++++++++ Make/Clean.sh | 20 +++++ Make/Create.sh | 26 ++++++ Make/Down-develop.sh | 5 +- Make/Down.sh | 5 +- Make/Makefile | 134 ------------------------------ Make/Matrix.json | 112 ------------------------- Make/Test-develop.yml | 6 +- Make/Test.sh | 14 +++- Make/Test.yml | 2 + Make/Up-develop.sh | 10 ++- Make/Up.sh | 10 ++- Make/Version.json | 16 ---- Make/body-entrypoint.docker | 2 +- Make/body-lsio.docker | 2 +- Make/body.docker | 6 +- README.md | 12 +-- 24 files changed, 174 insertions(+), 316 deletions(-) create mode 100644 Docker/NXMeta.Dockerfile create mode 100755 Make/Build.sh create mode 100755 Make/Clean.sh create mode 100755 Make/Create.sh delete mode 100644 Make/Makefile diff --git a/Docker/DWSpectrum-LSIO.Dockerfile b/Docker/DWSpectrum-LSIO.Dockerfile index 775b27d..f395f30 100644 --- a/Docker/DWSpectrum-LSIO.Dockerfile +++ b/Docker/DWSpectrum-LSIO.Dockerfile @@ -60,11 +60,11 @@ RUN apt-get update \ # Download the installer file RUN mkdir -p /temp -COPY Download.sh /temp/Download.sh +COPY download.sh /temp/download.sh # Set the working directory to /temp WORKDIR /temp -RUN chmod +x Download.sh \ - && ./Download.sh +RUN chmod +x download.sh \ + && ./download.sh # LSIO maps the host PUID and PGID environment variables to "abc" in the container. # The mediaserver calls "chown ${COMPANY_NAME}" at runtime @@ -97,7 +97,7 @@ RUN chown --verbose ${COMPANY_NAME}:${COMPANY_NAME} /opt/${COMPANY_NAME}/mediase # Copy etc init and services files # https://github.com/just-containers/s6-overlay#container-environment # https://www.linuxserver.io/blog/how-is-container-formed -COPY root/etc /etc +COPY s6-overlay /etc/s6-overlay # Expose port 7001 EXPOSE 7001 diff --git a/Docker/DWSpectrum.Dockerfile b/Docker/DWSpectrum.Dockerfile index 0154a7d..fe0a1bf 100644 --- a/Docker/DWSpectrum.Dockerfile +++ b/Docker/DWSpectrum.Dockerfile @@ -60,11 +60,11 @@ RUN apt-get update \ # Download the installer file RUN mkdir -p /temp -COPY Download.sh /temp/Download.sh +COPY download.sh /temp/download.sh # Set the working directory to /temp WORKDIR /temp -RUN chmod +x Download.sh \ - && ./Download.sh +RUN chmod +x download.sh \ + && ./download.sh # Install the mediaserver and dependencies RUN apt-get update \ @@ -84,7 +84,7 @@ RUN echo "${COMPANY_NAME} ALL = NOPASSWD: /opt/${COMPANY_NAME}/mediaserver/bin/r # Copy the entrypoint.sh launch script # entrypoint.sh will run the mediaserver and root-tool -COPY root/entrypoint.sh /opt/entrypoint.sh +COPY entrypoint.sh /opt/entrypoint.sh RUN chmod +x /opt/entrypoint.sh # Run the entrypoint as the mediaserver ${COMPANY_NAME} user diff --git a/Docker/NXMeta.Dockerfile b/Docker/NXMeta.Dockerfile new file mode 100644 index 0000000..e69de29 diff --git a/Docker/NxMeta-LSIO.Dockerfile b/Docker/NxMeta-LSIO.Dockerfile index 1776cf7..dbe6af1 100644 --- a/Docker/NxMeta-LSIO.Dockerfile +++ b/Docker/NxMeta-LSIO.Dockerfile @@ -60,11 +60,11 @@ RUN apt-get update \ # Download the installer file RUN mkdir -p /temp -COPY Download.sh /temp/Download.sh +COPY download.sh /temp/download.sh # Set the working directory to /temp WORKDIR /temp -RUN chmod +x Download.sh \ - && ./Download.sh +RUN chmod +x download.sh \ + && ./download.sh # LSIO maps the host PUID and PGID environment variables to "abc" in the container. # The mediaserver calls "chown ${COMPANY_NAME}" at runtime @@ -97,7 +97,7 @@ RUN chown --verbose ${COMPANY_NAME}:${COMPANY_NAME} /opt/${COMPANY_NAME}/mediase # Copy etc init and services files # https://github.com/just-containers/s6-overlay#container-environment # https://www.linuxserver.io/blog/how-is-container-formed -COPY root/etc /etc +COPY s6-overlay /etc/s6-overlay # Expose port 7001 EXPOSE 7001 diff --git a/Docker/NxMeta.Dockerfile b/Docker/NxMeta.Dockerfile index b8673fc..403f73d 100644 --- a/Docker/NxMeta.Dockerfile +++ b/Docker/NxMeta.Dockerfile @@ -60,11 +60,11 @@ RUN apt-get update \ # Download the installer file RUN mkdir -p /temp -COPY Download.sh /temp/Download.sh +COPY download.sh /temp/download.sh # Set the working directory to /temp WORKDIR /temp -RUN chmod +x Download.sh \ - && ./Download.sh +RUN chmod +x download.sh \ + && ./download.sh # Install the mediaserver and dependencies RUN apt-get update \ @@ -84,7 +84,7 @@ RUN echo "${COMPANY_NAME} ALL = NOPASSWD: /opt/${COMPANY_NAME}/mediaserver/bin/r # Copy the entrypoint.sh launch script # entrypoint.sh will run the mediaserver and root-tool -COPY root/entrypoint.sh /opt/entrypoint.sh +COPY entrypoint.sh /opt/entrypoint.sh RUN chmod +x /opt/entrypoint.sh # Run the entrypoint as the mediaserver ${COMPANY_NAME} user diff --git a/Docker/NxWitness-LSIO.Dockerfile b/Docker/NxWitness-LSIO.Dockerfile index 42b3000..176297b 100644 --- a/Docker/NxWitness-LSIO.Dockerfile +++ b/Docker/NxWitness-LSIO.Dockerfile @@ -60,11 +60,11 @@ RUN apt-get update \ # Download the installer file RUN mkdir -p /temp -COPY Download.sh /temp/Download.sh +COPY download.sh /temp/download.sh # Set the working directory to /temp WORKDIR /temp -RUN chmod +x Download.sh \ - && ./Download.sh +RUN chmod +x download.sh \ + && ./download.sh # LSIO maps the host PUID and PGID environment variables to "abc" in the container. # The mediaserver calls "chown ${COMPANY_NAME}" at runtime @@ -97,7 +97,7 @@ RUN chown --verbose ${COMPANY_NAME}:${COMPANY_NAME} /opt/${COMPANY_NAME}/mediase # Copy etc init and services files # https://github.com/just-containers/s6-overlay#container-environment # https://www.linuxserver.io/blog/how-is-container-formed -COPY root/etc /etc +COPY s6-overlay /etc/s6-overlay # Expose port 7001 EXPOSE 7001 diff --git a/Docker/NxWitness.Dockerfile b/Docker/NxWitness.Dockerfile index dc7ae6f..35d54a4 100644 --- a/Docker/NxWitness.Dockerfile +++ b/Docker/NxWitness.Dockerfile @@ -60,11 +60,11 @@ RUN apt-get update \ # Download the installer file RUN mkdir -p /temp -COPY Download.sh /temp/Download.sh +COPY download.sh /temp/download.sh # Set the working directory to /temp WORKDIR /temp -RUN chmod +x Download.sh \ - && ./Download.sh +RUN chmod +x download.sh \ + && ./download.sh # Install the mediaserver and dependencies RUN apt-get update \ @@ -84,7 +84,7 @@ RUN echo "${COMPANY_NAME} ALL = NOPASSWD: /opt/${COMPANY_NAME}/mediaserver/bin/r # Copy the entrypoint.sh launch script # entrypoint.sh will run the mediaserver and root-tool -COPY root/entrypoint.sh /opt/entrypoint.sh +COPY entrypoint.sh /opt/entrypoint.sh RUN chmod +x /opt/entrypoint.sh # Run the entrypoint as the mediaserver ${COMPANY_NAME} user diff --git a/Make/Build.sh b/Make/Build.sh new file mode 100755 index 0000000..b50d2d6 --- /dev/null +++ b/Make/Build.sh @@ -0,0 +1,60 @@ +#!/bin/bash + +## Dependencies: +# sudo apt install m4 docker-compose-plugin docker-buildx-plugin + +## Test installing in container: +# docker run -it --rm ubuntu:jammy /bin/bash +# docker run -it --rm lsiobase/ubuntu:jammy /bin/bash +# export DEBIAN_FRONTEND=noninteractive +# apt-get update && apt-get upgrade --yes +# apt-get install --no-install-recommends --yes mc nano strace wget gdb +# wget --no-verbose --output-document=./vms_server.zip https://updates.networkoptix.com/metavms/37996/metavms-server_update-5.1.2.37996-linux_x64.zip +# unzip -d ./download_zip ./vms_server.zip +# cp ./download_zip/metavms-server-5.1.2.37996-linux_x64.deb ./vms_server.deb +# Install: +# apt-get install --no-install-recommends --yes ./vms_server.deb +# Extract DEB package: +# dpkg-deb -R ./vms_server.deb ./vms_server +# Debug install errors: +# dpkg --debug=72200 --install ./vms_server.deb + +## Docker cleanup: +# df +# docker image prune --all +# docker system prune --all --force --volumes + +## Attach to running image: +# docker exec --interactive --tty [containername] /bin/bash + +## Usage: +# Create.sh : Update Version.json and Matrix.json and create Dockerfile's from M4 snippets. +# Build.sh : Build docker images from Dockerfile's. +# Test.sh : Create and build and launch compose Test.yml compose stack. +# Clean.sh : Shutdown compose stack and delete images. + + +# Echo commands +set -x + +# Exit on error +set -e + +# Build Dockerfile +function BuildDockerfile { + # Build x64 and ARM64 targets + docker buildx build --platform linux/amd64,linux/arm64 --tag test_${1,,} --file ../Docker/$1.Dockerfile ../Docker + # Build and load x64 target + docker buildx build --platform linux/amd64 --load --tag test_${1,,} --file ../Docker/$1.Dockerfile ../Docker +} + +# Create and use multi platfiorm build environment +docker buildx create --name "nxwitness" --use || true + +# Build Dockerfiles +BuildDockerfile "DWSpectrum" +BuildDockerfile "DWSpectrum-LSIO" +BuildDockerfile "NxMeta" +BuildDockerfile "NxMeta-LSIO" +BuildDockerfile "NxWitness" +BuildDockerfile "NxWitness-LSIO" diff --git a/Make/Clean.sh b/Make/Clean.sh new file mode 100755 index 0000000..94adb59 --- /dev/null +++ b/Make/Clean.sh @@ -0,0 +1,20 @@ +#!/bin/bash + +set -x +set -e + +# Delete images +function DeleteImage { + docker image rm test_${1,,} || true +} + +# Down stack +./Down.sh + +# Delete images +DeleteImage "DWSpectrum" +DeleteImage "DWSpectrum-LSIO" +DeleteImage "NxMeta" +DeleteImage "NxMeta-LSIO" +DeleteImage "NxWitness" +DeleteImage "NxWitness-LSIO" diff --git a/Make/Create.sh b/Make/Create.sh new file mode 100755 index 0000000..29c01b4 --- /dev/null +++ b/Make/Create.sh @@ -0,0 +1,26 @@ +#!/bin/bash + +# Echo commands +set -x + +# Exit on error +set -e + +# Create Dockerfile from M4 file +function CreateDockerfile { + rm ../Docker/$1.Dockerfile || true + m4 $1.m4 >../Docker/$1.Dockerfile +} + +# Update Version.json and create MAtrix.json +dotnet run --project ../CreateMatrix -- matrix --update +# Update M4 snippets using Matrix.json versions +dotnet run --project ../CreateMatrix -- make + +# Create Dockerfiles from M4 files +CreateDockerfile "DWSpectrum" +CreateDockerfile "DWSpectrum-LSIO" +CreateDockerfile "NxMeta" +CreateDockerfile "NxMeta-LSIO" +CreateDockerfile "NxWitness" +CreateDockerfile "NxWitness-LSIO" diff --git a/Make/Down-develop.sh b/Make/Down-develop.sh index e36b212..df9569e 100755 --- a/Make/Down-develop.sh +++ b/Make/Down-develop.sh @@ -1,4 +1,7 @@ #!/bin/bash -# Stop stack +set -x +set -e + +# Stop stack and cleanup volumes docker compose --file Test-develop.yml down --volumes diff --git a/Make/Down.sh b/Make/Down.sh index 5794d66..ab617d9 100755 --- a/Make/Down.sh +++ b/Make/Down.sh @@ -1,4 +1,7 @@ #!/bin/bash -# Stop stack +set -x +set -e + +# Stop stack and cleanup volumes docker compose --file Test.yml down --volumes diff --git a/Make/Makefile b/Make/Makefile deleted file mode 100644 index fe89b98..0000000 --- a/Make/Makefile +++ /dev/null @@ -1,134 +0,0 @@ -# Dependencies: -# sudo apt install make m4 docker-compose-plugin docker-buildx-plugin - -# Test installing in container: -# docker run -it --rm ubuntu:jammy /bin/bash -# docker run -it --rm lsiobase/ubuntu:jammy /bin/bash -# export DEBIAN_FRONTEND=noninteractive -# apt-get update && apt-get upgrade --yes -# apt-get install --no-install-recommends --yes mc nano strace wget gdb -# wget --no-verbose --output-document=./vms_server.zip https://updates.networkoptix.com/metavms/37996/metavms-server_update-5.1.2.37996-linux_x64.zip -# unzip -d ./download_zip ./vms_server.zip -# cp ./download_zip/metavms-server-5.1.2.37996-linux_x64.deb ./vms_server.deb -# Install: -# apt-get install --no-install-recommends --yes ./vms_server.deb -# Extract DEB package: -# dpkg-deb -R ./vms_server.deb ./vms_server -# Debug install errors: -# dpkg --debug=72200 --install ./vms_server.deb - -# Run shell in container, names come from Test.yml: -# docker run -it --rm test_nxwitness /bin/bash - -# Docker cleanup: -# df -# docker image prune --all -# docker system prune --all --force --volumes - -# Create Dockerfiles: -# make create - -# Build images: -# make build - -# Launch images: -# make up -## Test images by ctrl-click opening the browser links -## Attach to running image using docker exec --interactive --tty [containername] /bin/bash - -# Cleanup -# make clean - -SHELL := /bin/bash - -.DEFAULT_GOAL := check - -lowercase = $(subst A,a,$(subst B,b,$(subst C,c,$(subst D,d,$(subst E,e,$(subst F,f,$(subst G,g,$(subst H,h,$(subst I,i,$(subst J,j,$(subst K,k,$(subst L,l,$(subst M,m,$(subst N,n,$(subst O,o,$(subst P,p,$(subst Q,q,$(subst R,r,$(subst S,s,$(subst T,t,$(subst U,u,$(subst V,v,$(subst W,w,$(subst X,x,$(subst Y,y,$(subst Z,z,$1)))))))))))))))))))))))))) - -M4S := $(wildcard *.m4) -DIRS := $(basename $(M4S)) -LOWERDIRS := $(call lowercase,$(DIRS)) - -%/.docker-build: %/Dockerfile - docker buildx build --platform linux/amd64,linux/arm64 --tag test_$(call lowercase,$(patsubst %/,%,$(basename $@))) ../$(dir $@) - docker buildx build --platform linux/amd64 --load --tag test_$(call lowercase,$(patsubst %/,%,$(basename $@))) ../$(dir $@) - touch "../$@" - -%/.docker-clean: %/Dockerfile - -docker image rm test_$(call lowercase,$(patsubst %/,%,$(basename $@))) - -%/.docker-create: %/Dockerfile - touch "../$@" - -%/Dockerfile: %.m4 - -rm ../$@ - m4 $< >../$@ - -.PHONY: all -all: create build - -.PHONY: down -down: - ./Down.sh - -.PHONY: up -up: - ./Up.sh - -.PHONY: check -check: - @echo "Usage:" - @echo "'make create' : Create Docker files" - @echo "'make build' : Build Docker files" - @echo "'make clean' : Delete Docker images" - @echo "'make all' : Runs create and build" - @echo "" - @echo "Variables:" - @echo "M4S = $(M4S)" - @echo "DIRS = $(DIRS)" - @echo "LOWERDIRS = $(LOWERDIRS)" - -.PHONY: copy -copy: - -rm -rf ../DWSpectrum-LSIO/root - -mkdir ../DWSpectrum-LSIO/root - cp -R ../LSIO/* ../DWSpectrum-LSIO/root - -rm -rf ../NxWitness-LSIO/root - -mkdir ../NxWitness-LSIO/root - cp -R ../LSIO/* ../NxWitness-LSIO/root - -rm -rf ../NxMeta-LSIO/root - -mkdir ../NxMeta-LSIO/root - cp -R ../LSIO/* ../NxMeta-LSIO/root - -rm -rf ../DWSpectrum/root - -mkdir ../DWSpectrum/root - cp -R ../Entrypoint/* ../DWSpectrum/root/ - -rm -rf ../NxWitness/root - -mkdir ../NxWitness/root - cp -R ../Entrypoint/* ../NxWitness/root/ - -rm -rf ../NxMeta/root - -mkdir ../NxMeta/root - cp -R ../Entrypoint/* ../NxMeta/root/ - cp Download.sh ../DWSpectrum-LSIO/Download.sh - cp Download.sh ../DWSpectrum/Download.sh - cp Download.sh ../NxWitness-LSIO/Download.sh - cp Download.sh ../NxWitness/Download.sh - cp Download.sh ../NxMeta-LSIO/Download.sh - cp Download.sh ../NxMeta/Download.sh - -.PHONY: update -update: - dotnet run --project ../CreateMatrix -- matrix --update - dotnet run --project ../CreateMatrix -- make - -.PHONY: create -create: update copy $(DIRS:%=%/.docker-create) - -.PHONY: multiplat -multiplat: - -docker buildx create --name multiplat --use - -.PHONY: build -build: down multiplat $(DIRS:%=%/.docker-build) - -.PHONY: clean -clean: down $(DIRS:%=%/.docker-clean) diff --git a/Make/Matrix.json b/Make/Matrix.json index 2a3dba8..1117913 100644 --- a/Make/Matrix.json +++ b/Make/Matrix.json @@ -75,20 +75,6 @@ "DOWNLOAD_X64_URL=https://updates.networkoptix.com/default/37996/nxwitness-server_update-5.1.2.37996-linux_x64.zip" ] }, - { - "Name": "NxWitness", - "Branch": "main", - "CacheScope": "default", - "Tags": [ - "docker.io/ptr727/nxwitness:5.1.3.38235", - "docker.io/ptr727/nxwitness:rc" - ], - "Args": [ - "DOWNLOAD_ARM64_URL=https://updates.networkoptix.com/default/38235/nxwitness-server_update-5.1.3.38235-linux_arm64-rc.zip", - "DOWNLOAD_VERSION=5.1.3.38235", - "DOWNLOAD_X64_URL=https://updates.networkoptix.com/default/38235/nxwitness-server_update-5.1.3.38235-linux_x64-rc.zip" - ] - }, { "Name": "NxWitness-LSIO", "Branch": "main", @@ -104,20 +90,6 @@ "DOWNLOAD_X64_URL=https://updates.networkoptix.com/default/37996/nxwitness-server_update-5.1.2.37996-linux_x64.zip" ] }, - { - "Name": "NxWitness-LSIO", - "Branch": "main", - "CacheScope": "lsio", - "Tags": [ - "docker.io/ptr727/nxwitness-lsio:5.1.3.38235", - "docker.io/ptr727/nxwitness-lsio:rc" - ], - "Args": [ - "DOWNLOAD_ARM64_URL=https://updates.networkoptix.com/default/38235/nxwitness-server_update-5.1.3.38235-linux_arm64-rc.zip", - "DOWNLOAD_VERSION=5.1.3.38235", - "DOWNLOAD_X64_URL=https://updates.networkoptix.com/default/38235/nxwitness-server_update-5.1.3.38235-linux_x64-rc.zip" - ] - }, { "Name": "DWSpectrum", "Branch": "main", @@ -133,20 +105,6 @@ "DOWNLOAD_X64_URL=https://updates.networkoptix.com/digitalwatchdog/37996/dwspectrum-server_update-5.1.2.37996-linux_x64.zip" ] }, - { - "Name": "DWSpectrum", - "Branch": "main", - "CacheScope": "default", - "Tags": [ - "docker.io/ptr727/dwspectrum:5.1.3.38235", - "docker.io/ptr727/dwspectrum:rc" - ], - "Args": [ - "DOWNLOAD_ARM64_URL=https://updates.networkoptix.com/digitalwatchdog/38235/dwspectrum-server_update-5.1.3.38235-linux_arm64-rc.zip", - "DOWNLOAD_VERSION=5.1.3.38235", - "DOWNLOAD_X64_URL=https://updates.networkoptix.com/digitalwatchdog/38235/dwspectrum-server_update-5.1.3.38235-linux_x64-rc.zip" - ] - }, { "Name": "DWSpectrum-LSIO", "Branch": "main", @@ -162,20 +120,6 @@ "DOWNLOAD_X64_URL=https://updates.networkoptix.com/digitalwatchdog/37996/dwspectrum-server_update-5.1.2.37996-linux_x64.zip" ] }, - { - "Name": "DWSpectrum-LSIO", - "Branch": "main", - "CacheScope": "lsio", - "Tags": [ - "docker.io/ptr727/dwspectrum-lsio:5.1.3.38235", - "docker.io/ptr727/dwspectrum-lsio:rc" - ], - "Args": [ - "DOWNLOAD_ARM64_URL=https://updates.networkoptix.com/digitalwatchdog/38235/dwspectrum-server_update-5.1.3.38235-linux_arm64-rc.zip", - "DOWNLOAD_VERSION=5.1.3.38235", - "DOWNLOAD_X64_URL=https://updates.networkoptix.com/digitalwatchdog/38235/dwspectrum-server_update-5.1.3.38235-linux_x64-rc.zip" - ] - }, { "Name": "NxMeta", "Branch": "develop", @@ -252,20 +196,6 @@ "DOWNLOAD_X64_URL=https://updates.networkoptix.com/default/37996/nxwitness-server_update-5.1.2.37996-linux_x64.zip" ] }, - { - "Name": "NxWitness", - "Branch": "develop", - "CacheScope": "default", - "Tags": [ - "docker.io/ptr727/nxwitness:develop-5.1.3.38235", - "docker.io/ptr727/nxwitness:develop-rc" - ], - "Args": [ - "DOWNLOAD_ARM64_URL=https://updates.networkoptix.com/default/38235/nxwitness-server_update-5.1.3.38235-linux_arm64-rc.zip", - "DOWNLOAD_VERSION=5.1.3.38235", - "DOWNLOAD_X64_URL=https://updates.networkoptix.com/default/38235/nxwitness-server_update-5.1.3.38235-linux_x64-rc.zip" - ] - }, { "Name": "NxWitness-LSIO", "Branch": "develop", @@ -282,20 +212,6 @@ "DOWNLOAD_X64_URL=https://updates.networkoptix.com/default/37996/nxwitness-server_update-5.1.2.37996-linux_x64.zip" ] }, - { - "Name": "NxWitness-LSIO", - "Branch": "develop", - "CacheScope": "lsio", - "Tags": [ - "docker.io/ptr727/nxwitness-lsio:develop-5.1.3.38235", - "docker.io/ptr727/nxwitness-lsio:develop-rc" - ], - "Args": [ - "DOWNLOAD_ARM64_URL=https://updates.networkoptix.com/default/38235/nxwitness-server_update-5.1.3.38235-linux_arm64-rc.zip", - "DOWNLOAD_VERSION=5.1.3.38235", - "DOWNLOAD_X64_URL=https://updates.networkoptix.com/default/38235/nxwitness-server_update-5.1.3.38235-linux_x64-rc.zip" - ] - }, { "Name": "DWSpectrum", "Branch": "develop", @@ -312,20 +228,6 @@ "DOWNLOAD_X64_URL=https://updates.networkoptix.com/digitalwatchdog/37996/dwspectrum-server_update-5.1.2.37996-linux_x64.zip" ] }, - { - "Name": "DWSpectrum", - "Branch": "develop", - "CacheScope": "default", - "Tags": [ - "docker.io/ptr727/dwspectrum:develop-5.1.3.38235", - "docker.io/ptr727/dwspectrum:develop-rc" - ], - "Args": [ - "DOWNLOAD_ARM64_URL=https://updates.networkoptix.com/digitalwatchdog/38235/dwspectrum-server_update-5.1.3.38235-linux_arm64-rc.zip", - "DOWNLOAD_VERSION=5.1.3.38235", - "DOWNLOAD_X64_URL=https://updates.networkoptix.com/digitalwatchdog/38235/dwspectrum-server_update-5.1.3.38235-linux_x64-rc.zip" - ] - }, { "Name": "DWSpectrum-LSIO", "Branch": "develop", @@ -341,20 +243,6 @@ "DOWNLOAD_VERSION=5.1.2.37996", "DOWNLOAD_X64_URL=https://updates.networkoptix.com/digitalwatchdog/37996/dwspectrum-server_update-5.1.2.37996-linux_x64.zip" ] - }, - { - "Name": "DWSpectrum-LSIO", - "Branch": "develop", - "CacheScope": "lsio", - "Tags": [ - "docker.io/ptr727/dwspectrum-lsio:develop-5.1.3.38235", - "docker.io/ptr727/dwspectrum-lsio:develop-rc" - ], - "Args": [ - "DOWNLOAD_ARM64_URL=https://updates.networkoptix.com/digitalwatchdog/38235/dwspectrum-server_update-5.1.3.38235-linux_arm64-rc.zip", - "DOWNLOAD_VERSION=5.1.3.38235", - "DOWNLOAD_X64_URL=https://updates.networkoptix.com/digitalwatchdog/38235/dwspectrum-server_update-5.1.3.38235-linux_x64-rc.zip" - ] } ] } \ No newline at end of file diff --git a/Make/Test-develop.yml b/Make/Test-develop.yml index 6d88580..7230724 100644 --- a/Make/Test-develop.yml +++ b/Make/Test-develop.yml @@ -1,10 +1,6 @@ version: "3.7" -# Volume sub-paths are only supported on Moby v26+ -# https://github.com/moby/moby/pull/45687 - -# tmpfs is only supported on Linux -# tmpfs: /tmp +# Use docker hub published develop tag builds volumes: diff --git a/Make/Test.sh b/Make/Test.sh index 5748086..108e158 100755 --- a/Make/Test.sh +++ b/Make/Test.sh @@ -1,7 +1,13 @@ #!/bin/bash -make create -make build -make up +set -x +set -e -echo "Run 'make clean' to stop and cleanup" +# Create Dockerfile from M4 +./Create.sh + +# Build Dockerfile +./Build.sh + +# Launch compose stack +./Up.sh diff --git a/Make/Test.yml b/Make/Test.yml index 19a580d..0f9ef05 100644 --- a/Make/Test.yml +++ b/Make/Test.yml @@ -6,6 +6,8 @@ version: "3.7" # tmpfs is only supported on Linux # tmpfs: /tmp +# Use local test_* tag builds + volumes: test_dwspectrum_etc: diff --git a/Make/Up-develop.sh b/Make/Up-develop.sh index 7f902ea..d336e4d 100755 --- a/Make/Up-develop.sh +++ b/Make/Up-develop.sh @@ -1,15 +1,17 @@ #!/bin/bash -docker compose --file Test-develop.yml down --volumes +set -x +set -e + +# Launch stack docker compose --file Test-develop.yml up --detach +# Instructions echo "Ctrl-Click on links to launch web UI in browser" - echo "DW Spectrum:" "https://$HOSTNAME:7101/" echo "DW Spectrum-LSIO:" "https://$HOSTNAME:7111/" echo "Nx Witness:" "https://$HOSTNAME:7102/" echo "Nx Witness-LSIO:" "https://$HOSTNAME:7112/" echo "Nx Meta:" "https://$HOSTNAME:7103/" echo "Nx Meta-LSIO:" "https://$HOSTNAME:7113/" - -echo "Run './Down-develop.sh' to stop stack" +echo "Run 'Down-develop.sh' to stop stack" diff --git a/Make/Up.sh b/Make/Up.sh index dd8d42b..a7a1322 100755 --- a/Make/Up.sh +++ b/Make/Up.sh @@ -1,15 +1,17 @@ #!/bin/bash -docker compose --file Test.yml down --volumes +set -x +set -e + +# Launch stack docker compose --file Test.yml up --detach +# Instructions echo "Ctrl-Click on links to launch web UI in browser" - echo "DW Spectrum:" "https://$HOSTNAME:7101/" echo "DW Spectrum-LSIO:" "https://$HOSTNAME:7111/" echo "Nx Witness:" "https://$HOSTNAME:7102/" echo "Nx Witness-LSIO:" "https://$HOSTNAME:7112/" echo "Nx Meta:" "https://$HOSTNAME:7103/" echo "Nx Meta-LSIO:" "https://$HOSTNAME:7113/" - -echo "Run './Down.sh' to stop or 'make clean' to stop and cleanup images" +echo "Run 'Down.sh' to stop or 'Clean.sh' to stop and cleanup images" diff --git a/Make/Version.json b/Make/Version.json index 099ba28..fc62515 100644 --- a/Make/Version.json +++ b/Make/Version.json @@ -35,14 +35,6 @@ "Stable", "Latest" ] - }, - { - "Version": "5.1.3.38235", - "UriX64": "https://updates.networkoptix.com/default/38235/nxwitness-server_update-5.1.3.38235-linux_x64-rc.zip", - "UriArm64": "https://updates.networkoptix.com/default/38235/nxwitness-server_update-5.1.3.38235-linux_arm64-rc.zip", - "Labels": [ - "RC" - ] } ] }, @@ -57,14 +49,6 @@ "Stable", "Latest" ] - }, - { - "Version": "5.1.3.38235", - "UriX64": "https://updates.networkoptix.com/digitalwatchdog/38235/dwspectrum-server_update-5.1.3.38235-linux_x64-rc.zip", - "UriArm64": "https://updates.networkoptix.com/digitalwatchdog/38235/dwspectrum-server_update-5.1.3.38235-linux_arm64-rc.zip", - "Labels": [ - "RC" - ] } ] } diff --git a/Make/body-entrypoint.docker b/Make/body-entrypoint.docker index 3b7fcd2..ae9da67 100644 --- a/Make/body-entrypoint.docker +++ b/Make/body-entrypoint.docker @@ -16,7 +16,7 @@ RUN echo "${COMPANY_NAME} ALL = NOPASSWD: /opt/${COMPANY_NAME}/mediaserver/bin/r # Copy the entrypoint.sh launch script # entrypoint.sh will run the mediaserver and root-tool -COPY root/entrypoint.sh /opt/entrypoint.sh +COPY entrypoint.sh /opt/entrypoint.sh RUN chmod +x /opt/entrypoint.sh # Run the entrypoint as the mediaserver ${COMPANY_NAME} user diff --git a/Make/body-lsio.docker b/Make/body-lsio.docker index ce3ae1b..1f95205 100644 --- a/Make/body-lsio.docker +++ b/Make/body-lsio.docker @@ -29,7 +29,7 @@ RUN chown --verbose ${COMPANY_NAME}:${COMPANY_NAME} /opt/${COMPANY_NAME}/mediase # Copy etc init and services files # https://github.com/just-containers/s6-overlay#container-environment # https://www.linuxserver.io/blog/how-is-container-formed -COPY root/etc /etc +COPY s6-overlay /etc/s6-overlay # Expose port 7001 EXPOSE 7001 diff --git a/Make/body.docker b/Make/body.docker index 1ee7b45..b2d5499 100644 --- a/Make/body.docker +++ b/Make/body.docker @@ -41,8 +41,8 @@ RUN apt-get update \ # Download the installer file RUN mkdir -p /temp -COPY Download.sh /temp/Download.sh +COPY download.sh /temp/download.sh # Set the working directory to /temp WORKDIR /temp -RUN chmod +x Download.sh \ - && ./Download.sh +RUN chmod +x download.sh \ + && ./download.sh diff --git a/README.md b/README.md index dcd561e..0f20f8e 100644 --- a/README.md +++ b/README.md @@ -269,9 +269,9 @@ services: Build overview: -- A [Makefile](./Make/Makefile) is used to create the `Dockerfile`'s for all permutations of "Entrypoint", "LSIO", "NxMeta", "NxWitness" and "DWSpectrum" variants and products. +- [Build scripts](./Make/) are used to create the [`Dockerfile`'s](./Docker/) for all permutations of "Entrypoint", "LSIO", "NxMeta", "NxWitness" and "DWSpectrum" variants and products. - Docker does [not support](https://github.com/moby/moby/issues/735) a native `include` directive, instead the [M4 macro processor](https://www.gnu.org/software/m4/) is used to assemble common snippets. -- The `Dockerfile` [downloads](./Make/Download.sh) and installs the mediaserver installer at build time using environment variables for the URLs. +- The `Dockerfile` [downloads](./Docker/download.sh) and installs the mediaserver installer at build time using environment variables for the URLs. - [`CreateMatrix`](./CreateMatrix/) is a custom app used to update available product versions and download URLs. - [`Version.json`](./Make/Version.json) is updated using the mediaserver [Releases JSON API][nxwitness_releases] and [Packages API](https://updates.networkoptix.com/default/38363/packages.json). - The logic follows the same pattern as used by the [Nx Open](https://github.com/networkoptix/nx_open/blob/master/vms/libs/nx_vms_update/src/nx/vms/update/releases_info.cpp) desktop client logic. @@ -283,11 +283,11 @@ Build overview: Local testing: - Run `cd ./Make` and [`./Test.sh`](./Make/Test.sh), the following will be executed: - - `make create`: Create `Dockerfile`'s from the snippets using M4 and update the latest version information using `CreateMatrix`. - - `make build`: Build the `Dockerfile`'s using `docker buildx build`. - - `make up`: Launch a docker compose stack [`Test.yaml`](./Make/Test.yml) to run all product variants. + - [`Create.sh`](./Make/Create.sh): Create `Dockerfile`'s from the snippets using M4 and update the latest version information using `CreateMatrix`. + - [`Build.sh`](./Make/Build.sh): Builds the `Dockerfile`'s using `docker buildx build`. + - [`Up.sh`](./Make/Up.sh): Launch a docker compose stack [`Test.yaml`](./Make/Test.yml) to run all product variants. - Ctrl-Click on the links to launch the web UI for each of the product variants. -- Run `make clean` to shutdown the compose stack and cleanup images. +- Run [`Clean.sh`](./Make/Clean.sh) to shutdown the compose stack and cleanup images. ## Known Issues From 84d70ae599466ab2a536208639b5a5e09c8be12e Mon Sep 17 00:00:00 2001 From: Pieter Viljoen Date: Thu, 14 Mar 2024 08:04:04 -0700 Subject: [PATCH 7/8] Update pipeline to build new docker location --- .github/workflows/BuildPublishPipeline.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/BuildPublishPipeline.yml b/.github/workflows/BuildPublishPipeline.yml index 88d2b19..ab94c3e 100644 --- a/.github/workflows/BuildPublishPipeline.yml +++ b/.github/workflows/BuildPublishPipeline.yml @@ -143,8 +143,8 @@ jobs: with: cache-from: type=gha,scope=${{ matrix.images.cachescope }} cache-to: type=gha,mode=max,scope=${{ matrix.images.cachescope }} - context: ${{ matrix.images.name }} - file: ${{ matrix.images.name }}/Dockerfile + context: Docker + file: Docker/${{ matrix.images.name }}.Dockerfile platforms: linux/amd64,linux/arm64 # Push only if not a pull request and branch name matches current branch push: ${{ (github.event_name != 'pull_request') && (github.ref_name == matrix.images.branch) }} From 200847266bc21d77314e21d8879942f9d4d30a1f Mon Sep 17 00:00:00 2001 From: Pieter Viljoen Date: Thu, 14 Mar 2024 09:57:33 -0700 Subject: [PATCH 8/8] Readme --- Make/Build.sh | 12 +++++------- Make/Clean.sh | 1 - Make/Create.sh | 4 ---- Make/Down-develop.sh | 1 - Make/Down.sh | 1 - Make/Test.sh | 1 - Make/Up-develop.sh | 1 - Make/Up.sh | 1 - README.md | 10 ++++++---- version.json | 2 +- 10 files changed, 12 insertions(+), 22 deletions(-) diff --git a/Make/Build.sh b/Make/Build.sh index b50d2d6..4080a67 100755 --- a/Make/Build.sh +++ b/Make/Build.sh @@ -1,7 +1,11 @@ #!/bin/bash +set -e + ## Dependencies: -# sudo apt install m4 docker-compose-plugin docker-buildx-plugin +# Docker v25+, .NET SDK v8+ +# sudo apt update && sudo apt install m4 dotnet-sdk-8.0 docker-compose-plugin docker-buildx-plugin + ## Test installing in container: # docker run -it --rm ubuntu:jammy /bin/bash @@ -34,12 +38,6 @@ # Clean.sh : Shutdown compose stack and delete images. -# Echo commands -set -x - -# Exit on error -set -e - # Build Dockerfile function BuildDockerfile { # Build x64 and ARM64 targets diff --git a/Make/Clean.sh b/Make/Clean.sh index 94adb59..1fad3c9 100755 --- a/Make/Clean.sh +++ b/Make/Clean.sh @@ -1,6 +1,5 @@ #!/bin/bash -set -x set -e # Delete images diff --git a/Make/Create.sh b/Make/Create.sh index 29c01b4..e777122 100755 --- a/Make/Create.sh +++ b/Make/Create.sh @@ -1,9 +1,5 @@ #!/bin/bash -# Echo commands -set -x - -# Exit on error set -e # Create Dockerfile from M4 file diff --git a/Make/Down-develop.sh b/Make/Down-develop.sh index df9569e..b6a290a 100755 --- a/Make/Down-develop.sh +++ b/Make/Down-develop.sh @@ -1,6 +1,5 @@ #!/bin/bash -set -x set -e # Stop stack and cleanup volumes diff --git a/Make/Down.sh b/Make/Down.sh index ab617d9..39e150f 100755 --- a/Make/Down.sh +++ b/Make/Down.sh @@ -1,6 +1,5 @@ #!/bin/bash -set -x set -e # Stop stack and cleanup volumes diff --git a/Make/Test.sh b/Make/Test.sh index 108e158..85a9137 100755 --- a/Make/Test.sh +++ b/Make/Test.sh @@ -1,6 +1,5 @@ #!/bin/bash -set -x set -e # Create Dockerfile from M4 diff --git a/Make/Up-develop.sh b/Make/Up-develop.sh index d336e4d..e7be976 100755 --- a/Make/Up-develop.sh +++ b/Make/Up-develop.sh @@ -1,6 +1,5 @@ #!/bin/bash -set -x set -e # Launch stack diff --git a/Make/Up.sh b/Make/Up.sh index a7a1322..b6b12e7 100755 --- a/Make/Up.sh +++ b/Make/Up.sh @@ -1,6 +1,5 @@ #!/bin/bash -set -x set -e # Launch stack diff --git a/README.md b/README.md index 0f20f8e..db5dc23 100644 --- a/README.md +++ b/README.md @@ -15,6 +15,8 @@ Licensed under the [MIT License][license]. ## Release Notes +- Version 2.2: + - Simplified `Dockerfile` creation by using shell scripts instead of a `Makefile` (that I found too difficult to maintain and debug). - Version 2.1: - Added ARM64 images per user [request](https://github.com/ptr727/NxWitness/issues/131). - Note that testing was limited to verifying that the containers run on a Raspberry Pi 5. @@ -40,7 +42,7 @@ Images are published on [Docker Hub][hub]: Images are tagged as follows: -- `latest`: Latest published version, `docker pull docker.io/ptr727/nxmeta:latest`. +- `latest`: Latest published version, e.g. `docker pull docker.io/ptr727/nxmeta:latest`. - `stable`: Latest released version, e.g. `docker pull docker.io/ptr727/nxmeta:stable`. - `rc`: Latest RC version, e.g. `docker pull docker.io/ptr727/nxmeta:rc`. - `beta`: Latest Beta version, e.g. `docker pull docker.io/ptr727/nxmeta:beta` @@ -50,7 +52,7 @@ Images are tagged as follows: Notes: - `latest` and `stable` may be the same version if all builds are released builds. -- `rc` and `beta` tags are only built when RC and Beta builds are published, and may be older than current `latest` or `stable` builds. +- `rc` and `beta` tags are only built when RC and Beta builds are published by Nx, and may be older than current `latest` or `stable` builds. - See [Build Process](#build-process) for determination of the "released" status of a build. The images are updated weekly, picking up the latest upstream Ubuntu updates and newly released Nx product versions. @@ -237,7 +239,7 @@ services: ## Product Information -### Releases Information +### Release Information - Nx Witness: - [Downloads API](https://nxvms.com/api/utils/downloads) @@ -278,7 +280,7 @@ Build overview: - The "released" status of a build follows the same method as Nx uses in [`isBuildPublished()`][isbuildpublished] where `release_date` and `release_delivery_days` from the [Releases JSON API][nxwitness_releases] must be greater than `0` - [`Matrix.json`](./Make/Matrix.json) is created from the `Version.json` file and is used during pipeline builds using a [Matrix](https://docs.github.com/en/actions/using-jobs/using-a-matrix-for-your-jobs) strategy. - Automated builds are done using [GitHub Actions](https://docs.github.com/en/actions) and the [`BuildPublishPipeline.yml`](./.github/workflows/BuildPublishPipeline.yml) pipeline. -- Version history is maintained and used by `CreateMatrix` such that generic tags, e.g. `latest`, will never result in a lesser version number, i.e. break-fix-forward only, see [Issue #62](https://github.com/ptr727/NxWitness/issues/62) for details on Nx re-publishing `release` builds using an older version breaking already upgraded systems. +- Version history is maintained and used by `CreateMatrix` such that generic tags, e.g. `latest`, will never result in a lesser version number, i.e. break-fix-forward only, see [Issue #62](https://github.com/ptr727/NxWitness/issues/62) for details on Nx re-publishing "released" builds using an older version breaking already upgraded systems. Local testing: diff --git a/version.json b/version.json index e296714..cffd46d 100644 --- a/version.json +++ b/version.json @@ -1,6 +1,6 @@ { "$schema": "https://raw.githubusercontent.com/dotnet/Nerdbank.GitVersioning/master/src/NerdBank.GitVersioning/version.schema.json", - "version": "2.1", + "version": "2.2", "publicReleaseRefSpec": [ "^refs/heads/main$" ],