diff --git a/.github/workflows/build-artifacts.yml b/.github/workflows/build-artifacts.yml
new file mode 100644
index 0000000..09341f2
--- /dev/null
+++ b/.github/workflows/build-artifacts.yml
@@ -0,0 +1,16 @@
+name: "Build Artifacts for RetroDECK main manifest"
+
+on:
+  push:
+    branches:
+      - master
+      - main
+  workflow_call:
+  workflow_dispatch:
+
+jobs:
+
+  build-project:
+    uses: RetroDECK/components-template/.github/workflows/build_artifacts.yml@main
+    with:
+        MANIFEST_FILENAME: "org.mamedev.MAME.yaml"
\ No newline at end of file
diff --git a/.github/workflows/pr-from-upstream.yml b/.github/workflows/pr-from-upstream.yml
new file mode 100644
index 0000000..463c537
--- /dev/null
+++ b/.github/workflows/pr-from-upstream.yml
@@ -0,0 +1,13 @@
+name: "Sync with Upstream and Create PR"
+
+on:
+  workflow_call:
+  workflow_dispatch:
+  # schedule:
+  #   - cron: "30 0 * * *"  # Run every day at 00:30 UTC (9:30 JST)
+
+jobs:
+  upstream-sync:
+    uses: RetroDECK/components-template/.github/workflows/pr_from_upstream.yml@main
+    secrets:
+      REKKU_PRIVATE_KEY: ${{ secrets.REKKU_PRIVATE_KEY }}
\ No newline at end of file
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..b5351ef
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,3 @@
+artifacts-repo
+artifacts-build-dir
+tree.html
\ No newline at end of file
diff --git a/automation_tools/install_dependencies.sh b/automation_tools/install_dependencies.sh
new file mode 100755
index 0000000..1cd6025
--- /dev/null
+++ b/automation_tools/install_dependencies.sh
@@ -0,0 +1,33 @@
+#!/bin/bash
+# This script is installing the required dependencies to correctly run the pipeline and build the flatpak
+
+unset pkg_mgr
+
+# rpm-ostree must be checked before dnf because a dnf (wrapper) command also works on rpm-ostree distros (not what we want)
+for potential_pkg_mgr in apt pacman rpm-ostree dnf; do
+  command -v "$potential_pkg_mgr" &> /dev/null && pkg_mgr="$potential_pkg_mgr" && break
+done
+
+case "$pkg_mgr" in
+  apt)
+    sudo add-apt-repository -y ppa:flatpak/stable
+    sudo apt update
+    sudo apt install -y flatpak flatpak-builder p7zip-full xmlstarlet bzip2 curl jq
+    ;;
+  pacman)
+    sudo pacman -Syu --noconfirm flatpak flatpak-builder p7zip xmlstarlet bzip2
+    ;;
+  rpm-ostree)
+    echo "When using a distro with rpm-ostree, you shouldn't build directly on the host. Try using a distrobox."
+    exit 1
+    ;;
+  dnf)
+    sudo dnf install -y flatpak flatpak-builder p7zip p7zip-plugins xmlstarlet bzip2 curl
+    ;;
+  *)
+    echo "Package manager $pkg_mgr not supported. Please open an issue."
+    ;;
+esac
+
+flatpak remote-add --user --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
+flatpak remote-add --user --if-not-exists flathub-beta https://flathub.org/beta-repo/flathub-beta.flatpakrepo
diff --git a/automation_tools/update_from_upstream.sh b/automation_tools/update_from_upstream.sh
new file mode 100755
index 0000000..912b90c
--- /dev/null
+++ b/automation_tools/update_from_upstream.sh
@@ -0,0 +1,7 @@
+#!/bin/bash
+
+UPSTREAM_REPO='org.mamedev.MAME'
+TARGET_BRANCH='master'
+
+git fetch https://github.com/flathub/"$UPSTREAM_REPO" "$TARGET_BRANCH"  # Fetch the latest changes from the remote master branch
+git merge FETCH_HEAD  # Merge the fetched changes into your current branch
\ No newline at end of file