This commit is contained in:
Austin Huang 2021-03-26 21:16:27 -04:00
commit 2d21e1371c
No known key found for this signature in database
GPG Key ID: 84C23AA04587A91F
7 changed files with 188 additions and 38 deletions

View File

@ -1,34 +0,0 @@
name: Github debug build
on: workflow_dispatch
# push:
# branches: [ master ]
# pull_request:
# branches: [ master ]
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v2
- name: set up JDK 1.8
uses: actions/setup-java@v1
with:
java-version: 1.8
- name: Grant execute permission for gradlew
run: chmod +x gradlew
- name: Build Github debug apk
run: ./gradlew assembleGithubDebug --stacktrace
# Create artifact
- name: Create apk artifact
uses: actions/upload-artifact@v1
with:
name: app
path: app/build/outputs/apk/github/debug/app-github-debug.apk

View File

@ -0,0 +1,67 @@
name: Github nightly
on:
schedule:
# * is a special character in YAML so you have to quote this string
- cron: '27 10 * * *' # Everyday at 10:27:00
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v2
- name: set up JDK 1.8
uses: actions/setup-java@v1
with:
java-version: 1.8
- name: Grant execute permission for gradlew
run: chmod +x gradlew
- name: Build Github unsigned apk
run: ./gradlew assembleGithubRelease --stacktrace --project-prop pre
- name: Sign APK
uses: r0adkll/sign-android-release@v1
# ID used to access action output
id: sign_app
with:
releaseDirectory: app/build/outputs/apk/github/release
signingKeyBase64: ${{ secrets.SIGNING_KEY }}
alias: ${{ secrets.ALIAS }}
keyStorePassword: ${{ secrets.KEY_STORE_PASSWORD }}
keyPassword: ${{ secrets.KEY_PASSWORD }}
- name: Get current date and time
id: date
run: echo "::set-output name=date::$(date +'%Y%m%d_%H%M%S')"
# Create artifact
- name: Create apk artifact
uses: actions/upload-artifact@v2
with:
name: barinsta_nightly_${{ steps.date.outputs.date }}
path: ${{steps.sign_app.outputs.signedReleaseFile}}
# Send success notification
- name: Send success Telegram notification
if: ${{ success() }}
uses: appleboy/telegram-action@master
with:
to: ${{ secrets.TELEGRAM_BUILDS_CHANNEL_TO }}
token: ${{ secrets.TELEGRAM_BUILDS_BOT_TOKEN }}
message: "${{ github.workflow }} ${{ github.job }} #${{ github.run_number }} completed successfully.\nhttps://github.com/${{github.repository}}/actions/runs/${{github.run_id}}"
document: ${{steps.sign_app.outputs.signedReleaseFile}}
# Send failure notification
- name: Send failure Telegram notification
if: ${{ failure() }}
uses: appleboy/telegram-action@master
with:
to: ${{ secrets.TELEGRAM_BUILDS_CHANNEL_TO }}
token: ${{ secrets.TELEGRAM_BUILDS_BOT_TOKEN }}
message: "${{ github.workflow }} ${{ github.job }} #${{ github.run_number }} failed.\nhttps://github.com/${{github.repository}}/actions/runs/${{github.run_id}}"

View File

@ -0,0 +1,68 @@
name: Github pre-release
on: workflow_dispatch
# push:
# branches: [ master ]
# pull_request:
# branches: [ master ]
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v2
- name: set up JDK 1.8
uses: actions/setup-java@v1
with:
java-version: 1.8
- name: Grant execute permission for gradlew
run: chmod +x gradlew
- name: Build Github unsigned pre-release apk
run: ./gradlew assembleGithubRelease --stacktrace --project-prop pre
- name: Sign APK
uses: r0adkll/sign-android-release@v1
# ID used to access action output
id: sign_app
with:
releaseDirectory: app/build/outputs/apk/github/release
signingKeyBase64: ${{ secrets.SIGNING_KEY }}
alias: ${{ secrets.ALIAS }}
keyStorePassword: ${{ secrets.KEY_STORE_PASSWORD }}
keyPassword: ${{ secrets.KEY_PASSWORD }}
- name: Get current date and time
id: date
run: echo "::set-output name=date::$(date +'%Y%m%d_%H%M%S')"
# Create artifact
- name: Create apk artifact
uses: actions/upload-artifact@v2
with:
name: barinsta_pre-release_${{ steps.date.outputs.date }}
path: ${{steps.sign_app.outputs.signedReleaseFile}}
# Send success notification
- name: Send success Telegram notification
if: ${{ success() }}
uses: appleboy/telegram-action@master
with:
to: ${{ secrets.TELEGRAM_BUILDS_CHANNEL_TO }}
token: ${{ secrets.TELEGRAM_BUILDS_BOT_TOKEN }}
message: "${{ github.workflow }} ${{ github.job }} #${{ github.run_number }} completed successfully.\nURL: https://github.com/${{github.repository}}/actions/runs/${{github.run_id}}"
document: ${{steps.sign_app.outputs.signedReleaseFile}}
# Send failure notification
- name: Send failure Telegram notification
if: ${{ failure() }}
uses: appleboy/telegram-action@master
with:
to: ${{ secrets.TELEGRAM_BUILDS_CHANNEL_TO }}
token: ${{ secrets.TELEGRAM_BUILDS_BOT_TOKEN }}
message: "${{ github.workflow }} ${{ github.job }} #${{ github.run_number }} failed.\nURL: https://github.com/${{github.repository}}/actions/runs/${{github.run_id}}"

4
.gitignore vendored
View File

@ -17,4 +17,6 @@
.externalNativeBuild
.cxx
app/release
/sentry.properties
/sentry.properties
/app/fdroid/
/app/github/

View File

@ -2,6 +2,15 @@ apply plugin: 'com.android.application'
apply plugin: "androidx.navigation.safeargs"
apply from: 'sentry.gradle'
def getGitHash = { ->
def stdout = new ByteArrayOutputStream()
exec {
commandLine 'git', 'rev-parse', '--short', 'HEAD'
standardOutput = stdout
}
return stdout.toString().trim()
}
android {
compileSdkVersion 29
@ -55,7 +64,7 @@ android {
productFlavors {
github {
dimension "repo"
versionNameSuffix "-github"
// versionNameSuffix "-github" // appended in assemble task
buildConfigField("String", "dsn", SENTRY_DSN)
}
@ -64,6 +73,25 @@ android {
versionNameSuffix "-fdroid"
}
}
android.applicationVariants.all { variant ->
if (variant.flavorName != "github") return
variant.outputs.all { output ->
def builtType = variant.buildType.name
def versionName = variant.versionName
// def versionCode = variant.versionCode
def flavor = variant.flavorName
def suffix = "${versionName}-${flavor}_${builtType}" // eg. 19.1.0-github_debug or release
if (builtType.toString() == 'release' && project.hasProperty("pre")) {
// append latest commit short hash for pre-release
suffix = "${versionName}.${getGitHash()}-${flavor}" // eg. 19.1.0.b123456-github
}
output.versionNameOverride = suffix
outputFileName = "barinsta_${suffix}.apk"
}
}
}
configurations.all {
@ -129,9 +157,9 @@ dependencies {
implementation 'com.github.ammargitham:uCrop:2.3-native-beta-2'
implementation 'com.github.ammargitham:android-gpuimage:2.1.1-beta4'
debugImplementation 'com.squareup.leakcanary:leakcanary-android:2.6'
debugImplementation 'com.squareup.leakcanary:leakcanary-android:2.7'
githubImplementation 'io.sentry:sentry-android:4.3.0'
testImplementation 'org.junit.jupiter:junit-jupiter:5.7.1'
}

View File

@ -0,0 +1,18 @@
Si vous ne mettez pas en ligne pas de publications ou de stories sur Instagram, mais que vous ne pouvez pas vous en débarrasser à cause des personnes et des contenus, vous avez maintenant une alternative : Barinsta est un beau client qui vous permet de naviguer et d'interagir avec Instagram, tout en vous offrant plus d'options pour contrôler vos données.
* Pour ceux qui n'ont pas de compte, vous pouvez accéder aux profils publiques/hashtags/lieux !
* Pour ceux qui sont connectés, Barinsta peut obtenir la plupart des fonctionnalités de visualisation et d'interaction, avec des fonctionnalités supplémentaires telles que le téléchargement de messages/stories/avatars, la copie de textes, la comparaison des abonnés/abonnements, et plus encore !
Avantages supplémentaires :
* Empêche les décisions irrationnelles : Barinsta supprime le double-tap et vous oblige à cliquer dans les publications pour leur donner un like consciencieux. Il vous permet également d'accéder facilement aux publications que vous avez aimées via votre propre profil.
* Permet la personnalisation : choisissez vos thèmes et mises en page ! Vous pouvez même utiliser une disposition en grille pour le feed !
* Permet de visionner à votre rythme : pas besoin de «tenir» une story ou de scroller sans fin ! Zoomez quand vous le souhaitez !
* Ce n'est pas un mod : absolument AUCUNE dépendance de l'application Instagram réelle.
* Logiciel libre et open source : avec le code source de l'application ouvert pour inspection, pas besoin de s'inquiéter d'affaires louches !
* Protège votre vie privée de vos amis : Barinsta vous permet de lire des messages et des stories secrètement, sans que vos amis le sachent !
* Protège votre vie privée d'Instagram : l'application ne demande que ce dont elle a besoin pour vous montrer le contenu et ce que vous avez choisi dans les paramètres. Aucune communication avec des endpoints inutiles et seules des données minimales sont envoyées à Instagram.
*** S'il vous plait, utilisez cette application de manière responsable. ***
Pour plus d'informations, visiter https://barinsta.austinhuang.me.
(Nous étions auparavant connus sous le nom d'InstaGrabber.)

View File

@ -0,0 +1 @@
Client Instagram simple mais avancé