Commit Graph

27 Commits

Author SHA1 Message Date
Kgothatso Ngako
539babbfce build: consume secp256k1-frost-kmp and lightning-kmp-app as composite-build submodules
Add both libraries as git submodules and resolve them through Gradle
composite builds instead of remote publications, so local changes to
either library are picked up by the app build directly.

Submodules:
* secp256k1-frost-kmp (github.com/ac-cord-ac/secp256k1-frost-kmp) at
  2478403 -- BIP-327 FROTH/FROST signing over secp256k1, KMP.
* lightning-kmp-app (github.com/kngako/lightning-kmp-app) at 6745d88 --
  phoenix business logic on top of lightning-kmp-core. Both submodules
  carry a local commit aligning them with this build's AGP 9.1.1 /
  Kotlin 2.4.10 (AGP version must match across a composite build or the
  android variants fail attribute matching).

settings.gradle.kts:
* includeBuild() both submodule checkouts.
* lightning-kmp-app's project stays named ':library' (compose-resources
  derives its Res package from the project name), so an explicit
  dependencySubstitution maps the coordinate the app declares,
  fr.acinq.phoenix:lightning-kmp-app, onto that project.
* Drop the jitpack.io repository: it only served com.github.kngako,
  which is no longer consumed as a binary.

composeApp/build.gradle.kts:
* commonMain gains ac.cord.auxiliary:library:1.0.0 (secp256k1-frost-kmp,
  substituted by the composite build).
* commonMain replaces com.github.kngako.lightning-kmp-app:library (via
  JitPack) with fr.acinq.phoenix:lightning-kmp-app:1.0.0 (substituted by
  the composite build). lightning-kmp-core still comes from Maven
  Central.
* Remove the RestoreJitPackClassifier component-metadata rule and the
  javax.inject import: it only existed to repair the artifact
  classifiers JitPack drops from the apple metadata variants, which no
  longer applies.

gradle/libs.versions.toml:
* Remove the now-unused lightningKmpApp version and the
  com.github.kngako lightning-kmp-app catalog entry.

Verified:
  ./gradlew :composeApp:compileCommonMainKotlinMetadata             :composeApp:compileDebugKotlinAndroid
2026-08-15 17:07:31 +02:00
Kgothatso Ngako
086b2f4e70 Update dependencies 2026-08-15 15:42:34 +02:00
Kgothatso Ngako
b17901973c Add lightning-kmp-app as a commonMain dependency via JitPack
The shared lightning/phoenix logic now lives in kngako/lightning-kmp-app,
which publishes a single `:library` module. JitPack serves a repository's
submodules under <GROUP>.<ARTIFACT>, hence the
com.github.kngako.lightning-kmp-app:library coordinate. The repository is
content-filtered to com.github.kngako so it is not consulted for anything
else -- an unfiltered jitpack.io entry gets asked about every dependency
that misses in mavenCentral, and each miss is a remote round trip.

The version is a commit rather than master-SNAPSHOT. For a -SNAPSHOT
version JitPack advertises a unique-snapshot maven-metadata.xml
(timestamp=<sha>, buildNumber=1) while serving the files under their
literal -SNAPSHOT names, so gradle derives library-<target>-master-<sha>-1
and gets a 404 on every artifact. Pinning a commit sidesteps the snapshot
machinery entirely and is reproducible; it needs bumping when the fork
moves.

That leaves the classifier. JitPack rewrites the version inside a
published .module file and drops the classifier while doing so, so both
the sources and the host-specific metadata variants of each apple target
come back naming library-<target>-<ver>.jar -- a file that does not
exist, next to the -sources.jar and -metadata.jar that do. The klib and
the aar are named without a classifier and so survive the rewrite, which
is why the android compilation resolves this dependency perfectly well
and only the metadata compilations fail. Every shared ios source set
resolves through those, so a component metadata rule puts the -metadata
classifier back. It is scoped to the two apple modules and to their
metadata variant by name, so it cannot disturb the klib artifacts.

Verified: :composeApp:compileCommonMainKotlinMetadata and
:composeApp:compileDebugKotlinAndroid both pass.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-02 18:46:00 +02:00
Kgothatso Ngako
aad97bdd9e Add deterministic id on MLS related models 2026-07-01 20:27:05 +02:00
Kgothatso Ngako
124856ce2d Add active profile screens 2026-07-01 15:11:31 +02:00
Kgothatso Ngako
a10dc1a6f8 Add lightning-mobile support 2026-06-15 14:39:46 +02:00
Kgothatso Ngako
66852835f8 Update dependencies 2026-06-05 23:55:44 +02:00
Kgothatso Ngako
7dca669d66 Update compose hot reload 2026-05-23 13:09:13 +02:00
Kgothatso Ngako
b501529a58 Remove unused libraries 2026-05-20 21:17:47 +02:00
Kgothatso Ngako
e09eb664c0 Update every other dependencies 2026-05-17 23:12:49 +02:00
Kgothatso Ngako
f9f7e5f242 Update compile sdk and kotlin version 2026-05-17 23:06:12 +02:00
Kgothatso Ngako
9fa4acc1b1 Update dependencies to get new quarts 2026-05-17 23:02:42 +02:00
Kgothatso Ngako
e8a42b0123 Introduce foundation for negentropy logic. 2026-05-04 18:12:11 +02:00
Kgothatso Ngako
0531248457 Update to android room3 2026-05-02 00:05:38 +02:00
Kgothatso Ngako
f92ece5b66 Add lightning-kmp to libs.versions.toml 2026-04-21 23:50:54 +02:00
Kgothatso Ngako
42c76c1a36 Add coil to libs.versions.toml 2026-04-21 23:49:54 +02:00
Kgothatso Ngako
403b245880 Sync using the new logic. 2026-04-19 04:30:29 +02:00
Kgothatso Ngako
87bd722960 Add Primal like NostrPublisher 2026-04-18 21:58:32 +02:00
Kgothatso Ngako
76858f9cf0 Add primal RelaySocketManager 2026-04-18 02:41:31 +02:00
Kgothatso Ngako
29953d2c20 Use the CIO engine for ktor
All platforms will use the same http engine.
2026-03-30 13:25:19 +02:00
Kgothatso Ngako
a45acbce8a Update dependencies 2026-03-30 13:21:14 +02:00
Kgothatso Ngako
19d87e6f12 Ordering dependencies 2026-03-30 13:14:37 +02:00
Kgothatso Ngako
4cce9bc3d4 Format time 2026-03-30 13:09:49 +02:00
Kgothatso Ngako
f4cd036f51 Broadcast the things 2026-03-27 13:35:29 +02:00
Kgothatso Ngako
23033b0b47 Make room for a database. 2026-03-24 04:47:19 +02:00
Kgothatso Ngako
7a64c519e4 Initial run 2026-03-23 02:21:18 +02:00
Kgothatso Ngako
0652c6add4 Pass the torch... initial commit. 2026-03-23 01:41:39 +02:00