From a6388adc7f22d805ac2e192a98cacccdb2d201b9 Mon Sep 17 00:00:00 2001 From: TheOneWithTheBraid Date: Thu, 14 Jul 2022 15:04:00 +0200 Subject: [PATCH] feat: build F-Droid repo in CI - introduce F-Droid repo in CI/CD Fixes: #994 Signed-off-by: TheOneWithTheBraid --- .gitlab-ci.yml | 46 +- docs/fdroid_repo.md | 16 +- docs/index.html | 2 +- docs/qr-code-nightly.svg | 3431 -------------------- docs/qr-code.svg | 2831 ---------------- docs/qr-nightly.svg | 1 + docs/qr-stable.svg | 1 + fdroid/.gitignore | 4 + fdroid/config.nightly.py | 13 + fdroid/config.stable.py | 13 + fdroid/fdroid-icon.png | Bin 0 -> 3367 bytes fdroid/metadata/chat.fluffy.fluffychat.yml | 53 + scripts/create_fdroid_repos.sh | 64 + scripts/prepare-fdroid.sh | 12 + 14 files changed, 193 insertions(+), 6294 deletions(-) delete mode 100644 docs/qr-code-nightly.svg delete mode 100644 docs/qr-code.svg create mode 100644 docs/qr-nightly.svg create mode 100644 docs/qr-stable.svg create mode 100644 fdroid/.gitignore create mode 100644 fdroid/config.nightly.py create mode 100644 fdroid/config.stable.py create mode 100644 fdroid/fdroid-icon.png create mode 100644 fdroid/metadata/chat.fluffy.fluffychat.yml create mode 100755 scripts/create_fdroid_repos.sh create mode 100755 scripts/prepare-fdroid.sh diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 690e368a..f8822c8a 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -189,6 +189,25 @@ build_android_appbundle: only: - main +fdroid_repo: + image: debian:testing + stage: release + before_script: + - apt-get update && apt-get -qy install fdroidserver wget curl jq --no-install-recommends + - ./scripts/prepare-fdroid.sh + script: + - ./scripts/create_fdroid_repos.sh + artifacts: + when: always + paths: + - repo + needs: + - "build_android_debug" + resource_group: playstore_release + allow_failure: true + only: + - main + upload-fdroid: stage: release before_script: @@ -211,30 +230,10 @@ upload-fdroid: only: - tags -upload-fdroid-nightly: - stage: release - before_script: - - "which ssh-agent || (sudo apt-get update -y && sudo apt-get install openssh-client -y )" - - "which rsync || (sudo apt-get update -y && sudo apt-get install rsync -y )" - - "which pcregrep || (sudo apt-get update -y && sudo apt-get install pcregrep -y )" - - eval $(ssh-agent -s) - - echo "$SSH_PRIVATE_KEY" | tr -d '\r' | ssh-add - - - mkdir -p ~/.ssh - - chmod 700 ~/.ssh - - ssh-keyscan -t rsa ssh.fdroid.nordgedanken.dev >> ~/.ssh/known_hosts - script: - - cd build/android/ - - export UPDATE_VERSION=$(pcregrep -o1 'version:\s([0-9]*\.[0-9]*\.[0-9]*)\+[0-9]*' ../../pubspec.yaml) && mv app-release.apk "${UPDATE_VERSION}_$(date +%s).apk" - - rsync -rav -e ssh ./ fluffy@ssh.fdroid.nordgedanken.dev:/opt/fdroid/fluffychat-nightly/repo - - ssh fluffy@ssh.fdroid.nordgedanken.dev -t '/bin/bash -i -l -c "cd /opt/fdroid/fluffychat-nightly && source ../fdroidserver-env/bin/activate && fdroid update --verbose && deactivate"' - needs: ["build_android_apk"] - resource_group: playstore_release - allow_failure: true - only: - - main - pages: - needs: ["build_web"] + needs: + - "build_web" + - "fdroid_repo" stage: deploy image: node script: @@ -242,6 +241,7 @@ pages: - npx tailwindcss -o ./tailwind.css --minify - cd .. - mv docs public + - mv repo public - mv build/web/ public/web/ artifacts: paths: diff --git a/docs/fdroid_repo.md b/docs/fdroid_repo.md index 45f12679..dc3d4e78 100644 --- a/docs/fdroid_repo.md +++ b/docs/fdroid_repo.md @@ -5,11 +5,11 @@ are also published on it. ## Add Repository to F-Droid -Easiest way to add the Repository is to either scan the QR-Code or if you are on your phone directly click it. +Easiest way to add the Repository is to either **scan the QR-Code** or if you are on your phone **directly click it**. {::nomarkdown} - - + + {:/} @@ -24,7 +24,7 @@ If this still isn't working follow the next steps: 2. Go to the `Settings` Tab in the Bottom bar 3. Click the `Repositories` Action 4. Click on the plus sign at the top. -5. Fill in `https://fdroid.fluffychat.im` into the top field and `8E2637AEF6697CC6DD486AF044A6EE45B1A742AE3EF56566E748CDE8BC65C1FB` in the bottom field. +5. Fill in `https://fluffychat.im/repo/stable/repo/` into the top field and `8E2637AEF6697CC6DD486AF044A6EE45B1A742AE3EF56566E748CDE8BC65C1FB` in the bottom field. ## What is the fingerprint? @@ -34,11 +34,11 @@ The fingerprint of the Repository is: `8E2637AEF6697CC6DD486AF044A6EE45B1A742AE3 ## Add Repository to F-Droid -Easiest way to add the Repository is to either scan the QR-Code or if you are on your phone directly click it. +Easiest way to add the Repository is to either **scan the QR-Code** or if you are on your phone **directly click** it. {::nomarkdown} - - + + {:/} @@ -53,7 +53,7 @@ If this still isn't working follow the next steps: 2. Go to the `Settings` Tab in the Bottom bar 3. Click the `Repositories` Action 4. Click on the plus sign at the top. -5. Fill in `https://nightly.fdroid.fluffychat.im` into the top field and `21A469657300576478B623DF99D8EB889A80BCD939ACA60A4074741BEAEC397D` in the bottom field. +5. Fill in `https://fluffychat.im/repo/nightly/repo/` into the top field and `21A469657300576478B623DF99D8EB889A80BCD939ACA60A4074741BEAEC397D` in the bottom field. ## What is the fingerprint? diff --git a/docs/index.html b/docs/index.html index 482110f6..d1f63be1 100644 --- a/docs/index.html +++ b/docs/index.html @@ -551,7 +551,7 @@ href="https://hosted.weblate.org/projects/fluffychat/">Translations - FluffyChat Nightly + href="https://gitlab.com/famedly/fluffychat/-/blob/main/docs/fdroid_repo.md">FluffyChat F-Droid repository - Donate diff --git a/docs/qr-code-nightly.svg b/docs/qr-code-nightly.svg deleted file mode 100644 index d36a2844..00000000 --- a/docs/qr-code-nightly.svg +++ /dev/null @@ -1,3431 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/docs/qr-code.svg b/docs/qr-code.svg deleted file mode 100644 index b12c1e58..00000000 --- a/docs/qr-code.svg +++ /dev/null @@ -1,2831 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/docs/qr-nightly.svg b/docs/qr-nightly.svg new file mode 100644 index 00000000..cabc07a4 --- /dev/null +++ b/docs/qr-nightly.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/docs/qr-stable.svg b/docs/qr-stable.svg new file mode 100644 index 00000000..efb41aea --- /dev/null +++ b/docs/qr-stable.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/fdroid/.gitignore b/fdroid/.gitignore new file mode 100644 index 00000000..5b807a9c --- /dev/null +++ b/fdroid/.gitignore @@ -0,0 +1,4 @@ +repo +srclibs +tmp +chat.fluffy.fluffychat \ No newline at end of file diff --git a/fdroid/config.nightly.py b/fdroid/config.nightly.py new file mode 100644 index 00000000..86fe4932 --- /dev/null +++ b/fdroid/config.nightly.py @@ -0,0 +1,13 @@ +repo_url = "https://fluffychat.im/repo/nightly/repo" +repo_name = "FluffyChat nightly repo" +repo_icon = "fdroid-icon.png" +repo_description = """ +FluffyChat nightly repo +""" + +archive_older = 0 + +local_copy_dir = "/fdroid" + +keystore = "key.nightly.jks" +repo_keyalias = "vmd66783.contaboserver.net" diff --git a/fdroid/config.stable.py b/fdroid/config.stable.py new file mode 100644 index 00000000..0e10bdf3 --- /dev/null +++ b/fdroid/config.stable.py @@ -0,0 +1,13 @@ +repo_url = "https://fluffychat.im/repo/stable/repo" +repo_name = "FluffyChat repo" +repo_icon = "fdroid-icon.png" +repo_description = """ +FluffyChat repo +""" + +archive_older = 0 + +local_copy_dir = "/fdroid" + +keystore = "key.jks" +repo_keyalias = "key alias" diff --git a/fdroid/fdroid-icon.png b/fdroid/fdroid-icon.png new file mode 100644 index 0000000000000000000000000000000000000000..0c0d41738f054eaa77bba0ef0785e87227aa2692 GIT binary patch literal 3367 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 literal 0 HcmV?d00001 diff --git a/fdroid/metadata/chat.fluffy.fluffychat.yml b/fdroid/metadata/chat.fluffy.fluffychat.yml new file mode 100644 index 00000000..dc86bef7 --- /dev/null +++ b/fdroid/metadata/chat.fluffy.fluffychat.yml @@ -0,0 +1,53 @@ +Categories: + - Internet + - Phone & SMS +License: AGPL-3.0-only +AuthorName: Famedly +SourceCode: https://gitlab.com/famedly/fluffychat +IssueTracker: https://gitlab.com/famedly/fluffychat/-/issues +Translation: https://hosted.weblate.org/projects/fluffychat/ +Changelog: https://gitlab.com/ChristianPauly/fluffychat-flutter/-/blob/main/CHANGELOG.md + +AutoName: FluffyChat +Summary: "Chat with your friends with FluffyChat.\n" +Description: | + FluffyChat is an open, nonprofit and cute matrix messenger app for Ubuntu Touch, Android and iOS. + + Open + Opensource and open development where everyone can join. + + Nonprofit + FluffyChat is donation funded. + + Cute ♥ + Cute design and many theme settings including a dark mode. + + One-to-one and groupchats + Unlimited groups and direct chats. + + Easy + FluffyChat is made as simple to use as possible. + + Free + Free to use for everyone without ads. + + Decentralized + There is no "FluffyChat server" you are forced to use. Use the server you find trustworthy or host + your own. + + Compatible + Compatible with Riot, Fractal, Nekho and all matrix messengers. + + + FluffyChat comes with a dream + + Imagine a world where everyone can choose the messenger they like and is still able to chat with + all of their friends. + A world where there are no companies spying on you when you send selfies to friends and lovers. + And a world where apps are made for fluffyness and not for profit. ♥ + +RepoType: git +Repo: https://gitlab.com/famedly/fluffychat.git + +AutoUpdateMode: None +UpdateCheckMode: None diff --git a/scripts/create_fdroid_repos.sh b/scripts/create_fdroid_repos.sh new file mode 100755 index 00000000..56bf533d --- /dev/null +++ b/scripts/create_fdroid_repos.sh @@ -0,0 +1,64 @@ +#!/usr/bin/env bash + +GITLAB_PROJECT_ID="16112282" + +mkdir fdroid/repo +mkdir repo + +git fetch + +cd fdroid + +# building nightly repo + +cp config.nightly.py config.py + +PIPELINES="$(curl https://gitlab.com/api/v4/projects/${GITLAB_PROJECT_ID}/pipelines\?ref=main\&status=success\&order_by=updated_at | jq '.[].id' | head -n3)" + +cp ../build/app/outputs/apk/debug/app-debug.apk repo/fluffychat-latest.apk + +for PIPELINE in $PIPELINES +do + JOB="$(curl https://gitlab.com/api/v4/projects/${GITLAB_PROJECT_ID}/pipelines/$PIPELINE/jobs | jq -r '.[] | select(.name == "build_android_apk").id')" + if [ -n $JOB ]; then + URI="https://gitlab.com/api/v4/projects/${GITLAB_PROJECT_ID}/jobs/$JOB/artifacts/build/android/app-release.apk" + FILENAME="fluffychat-$PIPELINE.apk" + echo "Downloading $FILENAME from $URI ..." + wget --output-document="$FILENAME" "$URI" + mv "$FILENAME" repo + fi +done + +fdroid update --rename-apks +mkdir /fdroid && fdroid deploy +rm -rf /fdroid +cd .. && mkdir public && mv -v /fdroid repo/nightly + + +# building stable + RC repo + +mkdir /fdroid + +cd fdroid +rm -f repo/*.apk + +cp config.stable.py config.py + +PIPELINES="$(curl https://gitlab.com/api/v4/projects/${GITLAB_PROJECT_ID}/pipelines\?scope=tags\&status=success\&order_by=updated_at | jq '.[].id' | head -n3)" + +for PIPELINE in $PIPELINES +do + JOB="$(curl https://gitlab.com/api/v4/projects/${GITLAB_PROJECT_ID}/pipelines/$PIPELINE/jobs | jq -r '.[] | select(.name == "build_android_apk").id')" + if [ -n $JOB ]; then + URI="https://gitlab.com/api/v4/projects/${GITLAB_PROJECT_ID}/jobs/$JOB/artifacts/build/android/app-release.apk" + FILENAME="fluffychat-$PIPELINE.apk" + echo "Downloading $FILENAME from $URI ..." + wget --output-document="$FILENAME" "$URI" + mv "$FILENAME" repo + fi +done + +fdroid update --rename-apks +mkdir /fdroid && fdroid deploy +rm -rf /fdroid/archive +cd .. && mv -v /fdroid repo/stable diff --git a/scripts/prepare-fdroid.sh b/scripts/prepare-fdroid.sh new file mode 100755 index 00000000..f9384b0f --- /dev/null +++ b/scripts/prepare-fdroid.sh @@ -0,0 +1,12 @@ +#!/usr/bin/env bash + +cp -r android/fastlane fdroid/metadata/chat.fluffy.fluffychat +cd fdroid +echo $FDROID_KEY | base64 --decode --ignore-garbage > key.jks +echo $FDROID_NIGHTLY_KEY | base64 --decode --ignore-garbage > key.nightly.jks +echo "keypass=\"${FDROID_KEY_PASS}\"" >> config.stable.py +echo "keystorepass=\"${FDROID_KEY_PASS}\"" >> config.stable.py +echo "keypass=\"${FDROID_NIGHTLY_KEY_PASS}\"" >> config.nightly.py +echo "keystorepass=\"${FDROID_NIGHTLY_KEY_PASS}\"" >> config.nightly.py +chmod 600 config.stable.py key.jks config.nightly.py key.nightly.jks +cd ..