Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Enable Android build #384

Merged
merged 3 commits into from
Apr 2, 2024
Merged

Enable Android build #384

merged 3 commits into from
Apr 2, 2024

Conversation

flxo
Copy link
Contributor

@flxo flxo commented Mar 27, 2024

The target_os android is quite similar to linux but must be mentioned in the guards explicitly. Tested on a headless Android 9 with resolving disabled.

Fixes #78

@sigmaSd
Copy link
Collaborator

sigmaSd commented Mar 27, 2024

ref #78

@cyqsimon
Copy link
Collaborator

Hi @flxo, thanks for the PR.

Indeed, Android build has been requested previously in #78. That issue was never addressed because frankly, the project lacks a committed maintainer with the corresponding expertise. As detailed in #275, personally I also cannot dedicate any significant amount of time to this project beyond making sure no critical issues exist.

That being said, I would be happy to merge this on any one of two conditions, at your option:

  1. If you are willing to help address Android-specific build issues in the future,
  2. Or if we add a note making it clear that Android is only supported on a best-effort basis.

@flxo
Copy link
Contributor Author

flxo commented Mar 27, 2024

@cyqsimon Thanks.

We can do the following:

I'll extend the CI to run a build for target aarch64-linux-android with cross in the PR. I don't think that 32bit arm android is a use case anymore and checking aarch64-linux-android is enough.
I'll add a note in the readme that android is something like a Tier 2 target.
I have (currently) a fairly high amount of time to contribute to third party and open source projects, so I'll subscribe to this project and have an eye on android related things.
I'll add the missing changelog entry. Sorry for missing that.

cheers,
@flxo

@flxo
Copy link
Contributor Author

flxo commented Mar 28, 2024

@cyqsimon I updated the PR accordingly and tested the release build here.

Copy link
Collaborator

@cyqsimon cyqsimon left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM with a few minor suggestions. Thanks again!

.github/workflows/ci.yaml Outdated Show resolved Hide resolved
.github/workflows/release.yaml Outdated Show resolved Hide resolved
.github/workflows/release.yaml Show resolved Hide resolved
README.md Outdated Show resolved Hide resolved
The target_os `android` is quite similar to `linux` but must be
mentioned in the guards explicitly. Tested for target
`aarch64-linux-android`.
Use `cross` for building target `aarch64-linux-android`. In the `ci`
workflow the matrix branch of `os` `ubuntu-latest` is used because the
matrix organization is host os centric instead of target.

Releases are build with `cross` for target `aarch64-linux-android`.

Install `cross` if needed for a run. At the time of writing the latest
release of `cross` can't build binaries for target
`aarch64-linux-android` and it's common sense that the latest git tag or
`master` shall be used [1].

[1] cross-rs/cross#1222
@cyqsimon
Copy link
Collaborator

cyqsimon commented Apr 2, 2024

Ok let's merge! Don't worry about the test failure; it's a known problem.

@cyqsimon cyqsimon merged commit 9354683 into imsnif:main Apr 2, 2024
11 of 12 checks passed
@flxo flxo mentioned this pull request Apr 2, 2024
@cyqsimon cyqsimon mentioned this pull request Apr 15, 2024
tmeijn pushed a commit to tmeijn/dotfiles that referenced this pull request Aug 20, 2024
This MR contains the following updates:

| Package | Update | Change |
|---|---|---|
| [imsnif/bandwhich](https://github.com/imsnif/bandwhich) | minor | `v0.22.2` -> `v0.23.0` |

MR created with the help of [el-capitano/tools/renovate-bot](https://gitlab.com/el-capitano/tools/renovate-bot).

**Proposed changes to behavior should be submitted there as MRs.**

---

### Release Notes

<details>
<summary>imsnif/bandwhich (imsnif/bandwhich)</summary>

### [`v0.23.0`](https://github.com/imsnif/bandwhich/releases/tag/v0.23.0)

[Compare Source](imsnif/bandwhich@v0.22.2...v0.23.0)

#### Casuistry. It's a cool word isn't it?

This release is mostly bug fixes and maintainability changes with 1 minor feature:

-   Add PID column to the process table [#&#8203;379](imsnif/bandwhich#379) - [@&#8203;notjedi](https://github.com/notjedi)

A big rewrite of the main loop is still forthcoming™️.

#### What's Changed

-   CI: strip release binaries for all targets by [@&#8203;cyqsimon](https://github.com/cyqsimon) in imsnif/bandwhich#358
-   CI: include generated assets in release archive by [@&#8203;cyqsimon](https://github.com/cyqsimon) in imsnif/bandwhich#359
-   chore(deps): bump clap_mangen from 0.2.17 to 0.2.18 by [@&#8203;dependabot](https://github.com/dependabot) in imsnif/bandwhich#361
-   chore(deps): bump strum from 0.25.0 to 0.26.1 by [@&#8203;dependabot](https://github.com/dependabot) in imsnif/bandwhich#362
-   chore(deps): bump itertools from 0.12.0 to 0.12.1 by [@&#8203;dependabot](https://github.com/dependabot) in imsnif/bandwhich#363
-   Remove redundant imports by [@&#8203;cyqsimon](https://github.com/cyqsimon) in imsnif/bandwhich#377
-   CI: use GitHub API to exempt dependabot from changelog requirement by [@&#8203;cyqsimon](https://github.com/cyqsimon) in imsnif/bandwhich#378
-   chore(deps): bump clap from 4.4.18 to 4.5.1 by [@&#8203;dependabot](https://github.com/dependabot) in imsnif/bandwhich#373
-   chore(deps): bump thiserror from 1.0.56 to 1.0.57 by [@&#8203;dependabot](https://github.com/dependabot) in imsnif/bandwhich#366
-   chore(deps): bump log from 0.4.20 to 0.4.21 by [@&#8203;dependabot](https://github.com/dependabot) in imsnif/bandwhich#367
-   chore(deps): bump insta from 1.34.0 to 1.35.1 by [@&#8203;dependabot](https://github.com/dependabot) in imsnif/bandwhich#371
-   chore(deps): bump tokio from 1.35.1 to 1.36.0 by [@&#8203;dependabot](https://github.com/dependabot) in imsnif/bandwhich#370
-   chore(deps): bump anyhow from 1.0.79 to 1.0.80 by [@&#8203;dependabot](https://github.com/dependabot) in imsnif/bandwhich#369
-   chore(deps): bump chrono from 0.4.33 to 0.4.34 by [@&#8203;dependabot](https://github.com/dependabot) in imsnif/bandwhich#372
-   chore(deps): bump clap_mangen from 0.2.18 to 0.2.20 by [@&#8203;dependabot](https://github.com/dependabot) in imsnif/bandwhich#374
-   chore(deps): bump clap-verbosity-flag from 2.1.2 to 2.2.0 by [@&#8203;dependabot](https://github.com/dependabot) in imsnif/bandwhich#375
-   chore(deps): bump clap_complete from 4.4.9 to 4.5.1 by [@&#8203;dependabot](https://github.com/dependabot) in imsnif/bandwhich#376
-   chore(deps): bump ratatui from 0.25.0 to 0.26.1 by [@&#8203;dependabot](https://github.com/dependabot) in imsnif/bandwhich#368
-   chore(deps): bump mio from 0.8.10 to 0.8.11 by [@&#8203;dependabot](https://github.com/dependabot) in imsnif/bandwhich#380
-   feat: add `PID` column to `Process` table by [@&#8203;notjedi](https://github.com/notjedi) in imsnif/bandwhich#379
-   Remove unnecessary logging synchronisation by [@&#8203;cyqsimon](https://github.com/cyqsimon) in imsnif/bandwhich#381
-   Apply suggestions from new clippy lint `clippy::assigning_clones` by [@&#8203;cyqsimon](https://github.com/cyqsimon) in imsnif/bandwhich#382
-   Fix IPv6 socket detect logic by [@&#8203;cyqsimon](https://github.com/cyqsimon) in imsnif/bandwhich#383
-   CI: Configure dependabot grouping by [@&#8203;cyqsimon](https://github.com/cyqsimon) in imsnif/bandwhich#395
-   chore(deps): bump the dependencies group with 10 updates by [@&#8203;dependabot](https://github.com/dependabot) in imsnif/bandwhich#396
-   Enable Android build by [@&#8203;flxo](https://github.com/flxo) in imsnif/bandwhich#384
-   docs: add Exherbo Linux install instructions in README.md by [@&#8203;davlgd](https://github.com/davlgd) in imsnif/bandwhich#398
-   CI refactor by [@&#8203;cyqsimon](https://github.com/cyqsimon) in imsnif/bandwhich#399
-   Fix Windows FP discrepancy issue in test by [@&#8203;cyqsimon](https://github.com/cyqsimon) in imsnif/bandwhich#400
-   CI: Remove `musl-tools` install step by [@&#8203;cyqsimon](https://github.com/cyqsimon) in imsnif/bandwhich#402
-   Keep GitHub Actions up to date with GitHub's Dependabot by [@&#8203;cclauss](https://github.com/cclauss) in imsnif/bandwhich#403
-   chore(deps): bump actions/upload-artifact from 3 to 4 in the github-actions group by [@&#8203;dependabot](https://github.com/dependabot) in imsnif/bandwhich#404
-   chore(deps): bump the dependencies group with 6 updates by [@&#8203;dependabot](https://github.com/dependabot) in imsnif/bandwhich#405
-   Temporarily disable UI tests by [@&#8203;cyqsimon](https://github.com/cyqsimon) in imsnif/bandwhich#406
-   CI: Enable more cross-compiled builds by [@&#8203;cyqsimon](https://github.com/cyqsimon) in imsnif/bandwhich#401
-   Add logo by [@&#8203;cyqsimon](https://github.com/cyqsimon) in imsnif/bandwhich#330
-   Update README by [@&#8203;cyqsimon](https://github.com/cyqsimon) in imsnif/bandwhich#407
-   CI: use sccache to speed up CI by [@&#8203;cyqsimon](https://github.com/cyqsimon) in imsnif/bandwhich#408
-   Update usage in README by [@&#8203;cyqsimon](https://github.com/cyqsimon) in imsnif/bandwhich#409
-   chore(deps): bump taiki-e/cache-cargo-install-action from 1 to 2 in the github-actions group by [@&#8203;dependabot](https://github.com/dependabot) in imsnif/bandwhich#411
-   chore(deps): bump mozilla-actions/sccache-action from 0.0.4 to 0.0.5 in the github-actions group by [@&#8203;dependabot](https://github.com/dependabot) in imsnif/bandwhich#415
-   chore(deps): bump the dependencies group across 1 directory with 19 updates by [@&#8203;dependabot](https://github.com/dependabot) in imsnif/bandwhich#416
-   chore(deps): bump openssl from 0.10.64 to 0.10.66 by [@&#8203;dependabot](https://github.com/dependabot) in imsnif/bandwhich#417
-   chore(deps): bump the dependencies group with 14 updates by [@&#8203;dependabot](https://github.com/dependabot) in imsnif/bandwhich#418
-   Update `sysinfo` API calls by [@&#8203;cyqsimon](https://github.com/cyqsimon) in imsnif/bandwhich#421

#### New Contributors

-   [@&#8203;notjedi](https://github.com/notjedi) made their first contribution in imsnif/bandwhich#379
-   [@&#8203;flxo](https://github.com/flxo) made their first contribution in imsnif/bandwhich#384
-   [@&#8203;davlgd](https://github.com/davlgd) made their first contribution in imsnif/bandwhich#398
-   [@&#8203;cclauss](https://github.com/cclauss) made their first contribution in imsnif/bandwhich#403

**Full Changelog**: imsnif/bandwhich@v0.22.2...v0.23.0

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.

♻ **Rebasing**: Whenever MR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 **Ignore**: Close this MR and you won't be reminded about this update again.

---

 - [ ] <!-- rebase-check -->If you want to rebase/retry this MR, check this box

---

This MR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy40NDAuNyIsInVwZGF0ZWRJblZlciI6IjM3LjQ0MC43IiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJSZW5vdmF0ZSBCb3QiXX0=-->
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.

Implementation for android (maybe using termux)
4 participants