From 9e403f9550b9d7619262202d2628f74089f01966 Mon Sep 17 00:00:00 2001
From: Adar Nimrod <nimrod@shore.co.il>
Date: Sat, 11 Jan 2025 23:08:46 +0200
Subject: [PATCH] megacmd: New image for the MEGAcmd CLI.

---
 .gitlab-ci.yml        | 16 ++++++++++++++++
 megacmd/.dockerignore |  2 ++
 megacmd/Dockerfile    | 15 +++++++++++++++
 megacmd/README.md     |  9 +++++++++
 megacmd/mega.sources  |  4 ++++
 5 files changed, 46 insertions(+)
 create mode 100644 megacmd/.dockerignore
 create mode 100644 megacmd/Dockerfile
 create mode 100644 megacmd/README.md
 create mode 100644 megacmd/mega.sources

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index ad72a20..6ba135f 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -245,6 +245,22 @@ push-workbench:
     - job: build-workbench
       artifacts: true
 
+# megacmd image:
+
+build-megacmd:
+  extends: .container-build
+  variables:
+    CONTEXT: megacmd
+
+push-megacmd:
+  extends: .container-push
+  variables:
+    CONTEXT: megacmd
+    IMAGE: megacmd
+  needs:
+    - job: build-megacmd
+      artifacts: true
+
 # resolver image:
 
 build-resolver:
diff --git a/megacmd/.dockerignore b/megacmd/.dockerignore
new file mode 100644
index 0000000..d3dcad7
--- /dev/null
+++ b/megacmd/.dockerignore
@@ -0,0 +1,2 @@
+*
+!*.sources
diff --git a/megacmd/Dockerfile b/megacmd/Dockerfile
new file mode 100644
index 0000000..b6c63da
--- /dev/null
+++ b/megacmd/Dockerfile
@@ -0,0 +1,15 @@
+# hadolint ignore=DL3006
+FROM registry.shore.co.il/toolbx
+RUN curl https://mega.nz/linux/repo/Debian_testing/Release.key --output /etc/apt/keyrings/mega.asc
+COPY --chown=root:root mega.sources /etc/apt/sources.list.d/
+# hadolint ignore=DL3008
+RUN apt-get update && \
+    DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends \
+        megacmd \
+    && \
+    mega-exec version && \
+    rm -rf /tmp/* /var/tmp/* /var/lib/apt/lists/* /var/cache/apt/archives/* /etc/apt/sources.list.d/megasync.list /root/.megaCmd
+VOLUME /Downloads
+WORKDIR /Downloads
+ENV HOME=/tmp
+ENTRYPOINT ["runas", "mega-exec"]
diff --git a/megacmd/README.md b/megacmd/README.md
new file mode 100644
index 0000000..940dd2e
--- /dev/null
+++ b/megacmd/README.md
@@ -0,0 +1,9 @@
+# MEGA CMD
+
+The Mega CLI.
+
+## Example usage
+
+```
+podman run --rm -v "$HOME/Downloads:/Downloads" registry.shore.co.il/megacmd get https://mega.nz/file/XXXXX
+```
diff --git a/megacmd/mega.sources b/megacmd/mega.sources
new file mode 100644
index 0000000..f07c313
--- /dev/null
+++ b/megacmd/mega.sources
@@ -0,0 +1,4 @@
+Types: deb
+URIs: https://mega.nz/linux/repo/Debian_testing/
+Suites: ./
+Signed-By: /etc/apt/keyrings/mega.asc
-- 
GitLab