Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit db3041e0 authored by Guillaume Jacquart's avatar Guillaume Jacquart
Browse files

Merge branch '6669-update_orbot_16.6.3' into 'main'

6669: update to orbot 16.6.3-RC1

See merge request !13
parents c5c00915 bc2c0e7a
Loading
Loading
Loading
Loading
Loading
+37 −4
Original line number Diff line number Diff line
@@ -2,11 +2,44 @@

This Module (aar) implements IpScramblerModule functionnalities with Tor, reliying on a fork of OrbotService.

# Build

PrivacyModuleTor includes git repo submodules of OrbotService, the module used by Orbot to run Tor

# Functionalities
Be sure that you have all of the git submodules up-to-date:

## v0.2.0
	git submodule update --init --recursive

* appList is now a bypass tor app list.
* add a parameter enableNotification on start tor, which hide service notification (set to false).
You can build the AAR modules :

    ./gradlew :orbotservice:assembleRelease :privacymoduletor:assembleRelease

To deploy localy during development

    ./gradlew --console=verbose publishToMavenLocal

This will put compiled AAR and pom file exposing their dependencies in the local maven
repository (usually in ~/.m2/repository).


To push release on gitlab

    ./gradlew --console=verbose publish

# Update orbotservice to an upper Orbot version

1. Upgrade the code: follow the steps in [orbotservice/README.md](orbotservice/README.md)
2. Prepare the orbotservice the dependencies : follow the steps in [exportdependencies/update_dependencies.md](exportdependencies/update_dependencies.md), first using the mvn install:install-file command
3. build and deploy orbotservice locally: 

    ./gradlew :orbotservice:assembleRelease
   ./gradlew --console=verbose :orbotservice:publishToMavenLocal

4. build and deploy locally  privacymoduletor
   ./gradlew :orbotservice:assembleRelease :privacymoduletor:assembleRelease
   ./gradlew --console=verbose :privacymoduletor:publishToMavenLocal
5. Test this new version with advanced privacy, and merge the orbotservice.
6. deploy the orbotservice dependencies to gitlab registry see [exportdependencies/update_dependencies.md](exportdependencies/update_dependencies.md), using mvn deploy:deploy-file command
7. deploy orbotservice in gitlab registry
   ./gradlew --console=verbose :orbotservice:publish
8. Create privacymoduletor MR. CI will prepare and publish the privacymoduletor.aar .
+3 −61
Original line number Diff line number Diff line
@@ -2,12 +2,10 @@
apply plugin: 'maven-publish'

buildscript {
    apply from: './dependencies.gradle'

    ext.kotlin_version = "1.6.10"
    ext.orbot_version = "orbot-16.6.2"
    ext.orbot_service_revision = "2"
    ext.advanced_privacy_version = "1.7.0"
    ext.advanced_privacy_version = "1.10.0"

    apply from: './dependencies.gradle'

    repositories {
        google()
@@ -18,59 +16,3 @@ buildscript {
        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
    }
}

configure(project(':orbotservice')) {
    publishing {
        publications {
            maven(MavenPublication) {
                groupId 'foundation.e'
                //You can either define these here or get them from project conf elsewhere
                artifactId 'orbotservice'
                version "$orbot_version-$orbot_service_revision"
                artifact "$buildDir/outputs/aar/orbotservice-release.aar" //aar artifact you want to publish

                //generate pom nodes for dependencies
                pom.withXml {
                    def dependenciesNode = asNode().appendNode('dependencies')
                    configurations.implementation.allDependencies.each { dependency ->
                        if (dependency.name != 'unspecified') {
                            def dependencyNode = dependenciesNode.appendNode('dependency')
                            dependencyNode.appendNode('groupId', dependency.group)
                            dependencyNode.appendNode('artifactId', dependency.name)
                            dependencyNode.appendNode('version', dependency.version)
                        }
                    }
                }

                repositories {
                    def ciJobToken = System.getenv("CI_JOB_TOKEN")
                    def ciApiV4Url = System.getenv("CI_API_V4_URL")
                    if (ciJobToken != null) {
                        maven {
                            url "${ciApiV4Url}/projects/1063/packages/maven"
                            credentials(HttpHeaderCredentials) {
                                name = 'Job-Token'
                                value = ciJobToken
                            }
                            authentication {
                                header(HttpHeaderAuthentication)
                            }
                        }
                    } else {
                        maven {
                            url "https://gitlab.e.foundation/api/v4/projects/1063/packages/maven"
                            credentials(HttpHeaderCredentials) {
                                name = "Private-Token"
                                value = gitLabPrivateToken
                                // the variable resides in ~/.gradle/gradle.properties
                            }
                            authentication {
                                header(HttpHeaderAuthentication)
                            }
                        }
                    }
                }
            }
        }
    }
}
+7 −6
Original line number Diff line number Diff line
@@ -21,11 +21,12 @@ ext {
            guardian_geoip               : "20191217",
            guardian_jsocks              : "1.0.4",
            guardian_jtorctl             : "0.4.5.7",
            ipt_proxy                    : "1.7.1",
            ipt_proxy                    : "1.8.1",
            portmapper                   : "2.0.5",
            tor_android                  : "0.4.7.8",
            tor_android                  : "0.4.7.10",
            pcap_core                    : "1.8.2",
            pcap_factory                 : "1.8.2"
            pcap_factory                 : "1.8.2",
            orbot_service                : "orbot-16.6.3-1"
    ]

    libs = [
@@ -48,12 +49,12 @@ ext {
            apl_appintro                   : "com.github.apl-devs:appintro:$versions.apl_appintro",
            bclogic_pulsator               : "pl.bclogic:pulsator4droid:$versions.bclogic_pulsator",
            fastlane_screengrab            : "tools.fastlane:screengrab:$versions.fastlane_screengrab",
            guardian_geoip                 : "info.guardianproject:geoip:$versions.guardian_geoip",
            guardian_geoip                 : "foundation.e:geoip:$versions.orbot_service",
            guardian_jsocks                : "com.gitlab.guardianproject:jsocksandroid:$versions.guardian_jsocks",
            guardian_jtorctl               : "info.guardianproject:jtorctl:$versions.guardian_jtorctl",
            ipt_proxy                      : "com.github.bitmold:OrbotIPtProxy:$versions.ipt_proxy",
            ipt_proxy                      : "foundation.e:OrbotIPtProxy:$versions.orbot_service",
            portmapper                     : "com.offbynull.portmapper:portmapper:$versions.portmapper",
            tor_android                    : "info.guardianproject:tor-android:$versions.tor_android",
            tor_android                    : "foundation.e:tor-android:$versions.orbot_service",
            pcap_core                      : "org.pcap4j:pcap4j-core:$versions.pcap_core",
            pcap_factory                   : "org.pcap4j:pcap4j-packetfactory-static:$versions.pcap_factory"
    ]
+25 −0
Original line number Diff line number Diff line
<?xml version="1.0" encoding="UTF-8"?>
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <modelVersion>4.0.0</modelVersion>
    <groupId>foundation.e</groupId>
    <artifactId>orbotservice</artifactId>
    <version>orbot-16.6.3-1</version>

    <description></description>

    <properties>
        <groupId>${project.groupId}</groupId>
        <artifactId>${project.artifactId}</artifactId>
        <version>${project.version}</version>
        <packaging>aar</packaging>
        <file>OrbotLib.aar</file>
    </properties>

    <repositories>
        <repository>
            <id>gitlab-e-maven</id>
            <url>https://gitlab.e.foundation/api/v4/projects/1063/packages/maven</url>
        </repository>
    </repositories>
</project>
+52 −0
Original line number Diff line number Diff line
apply plugin: 'maven-publish'

publishing {
    publications {
        maven(MavenPublication) {
            groupId 'foundation.e'
            artifactId 'orbotservice'
            version versions.orbot_service
            artifact "$buildDir/outputs/aar/orbotservice-release.aar"

            pom.withXml {
                def dependenciesNode = asNode().appendNode('dependencies')
                configurations.implementation.allDependencies.each { dependency ->
                    if (dependency.name != 'unspecified') {
                        def dependencyNode = dependenciesNode.appendNode('dependency')
                        dependencyNode.appendNode('groupId', dependency.group)
                        dependencyNode.appendNode('artifactId', dependency.name)
                        dependencyNode.appendNode('version', dependency.version)
                    }
                }
            }

            repositories {
                def ciJobToken = System.getenv("CI_JOB_TOKEN")
                def ciApiV4Url = System.getenv("CI_API_V4_URL")
                if (ciJobToken != null) {
                    maven {
                        url "${ciApiV4Url}/projects/1063/packages/maven"
                        credentials(HttpHeaderCredentials) {
                            name = 'Job-Token'
                            value = ciJobToken
                        }
                        authentication {
                            header(HttpHeaderAuthentication)
                        }
                    }
                } else {
                    maven {
                        url "https://gitlab.e.foundation/api/v4/projects/1063/packages/maven"
                        credentials(HttpHeaderCredentials) {
                            name = "Private-Token"
                            value = gitLabPrivateToken
                        }
                        authentication {
                            header(HttpHeaderAuthentication)
                        }
                    }
                }
            }
        }
    }
}
 No newline at end of file
Loading