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