Skip to content

Github actions and fork of croc#5

Open
abakum wants to merge 6 commits into
Dking08:masterfrom
abakum:master
Open

Github actions and fork of croc#5
abakum wants to merge 6 commits into
Dking08:masterfrom
abakum:master

Conversation

@abakum
Copy link
Copy Markdown

@abakum abakum commented May 16, 2026

Dear Dastageer, I made a convenient workflow for you. And I tried my fork of croc — it works. Now the recipient can start receiving files before the sender. You can revert to the original croc using the command orig.sh. https://github.com/abakum/croc-app/releases/tag/v4.1.0

abakum added 6 commits May 16, 2026 15:03
Generate a test signing key and sign the release APK before uploading
as a build artifact, replacing the previous unsigned APK upload with
the signed version.
Separate the monolithic build job into two distinct jobs:
- debug: builds and signs with test key, uploads debug artifact
- release: builds with production keystore secrets, extracts version
  info from build config, uploads signed artifact, and creates a
  GitHub release with changelog from fastlane metadata
- Use `head -1` when grepping versionName/versionCode to avoid
  matching multiple occurrences in build.gradle.kts
- Simplify regex patterns for more reliable version parsing
- Use conditional `--notes-file` flag instead of cat with fallback
  for passing changelog to gh release create
- Update croc submodule
@abakum
Copy link
Copy Markdown
Author

abakum commented May 16, 2026

To use release add 4 secrets GitHub → Settings → Secrets and variables → Actions: e.g.
echo "=== KEYSTORE_BASE64 ===" && base64 -w0 release.jks && echo && echo && echo "=== KEYSTORE_PASSWORD ===" && echo "crocapp2026" && echo && echo "=== KEY_ALIAS ===" && echo "release" && echo && echo "=== KEY_PASSWORD ===" && echo "crocapp2026"

@abakum
Copy link
Copy Markdown
Author

abakum commented May 17, 2026

Unfortunately, croc-app doesn't work on Android 16. The issue is that libcroc.so isn't a real shared library. Go with CGO_ENABLED=0 produces a regular PIE executable that's just named libcroc.so. This worked on Android ≤15 because nativeLibraryDir had execute permissions. Android 16 'Baklava' blocks execve() from the app context.
But there's good news: via gomobile, I built a wrapper that packages croc into a library and uses a pipe to stream the progress to your croc-app. I managed to run it on Android 16. This also solves the problem with F-Droid! Please look
https://github.com/abakCroc/croc-app/releases/tag/v4.1.0

@Dking08
Copy link
Copy Markdown
Owner

Dking08 commented May 18, 2026

Thank you abakum, for the efforts

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants