profile
viewpoint
If you are wondering where the data of this site comes from, please visit https://api.github.com/users/n8fr8/events. GitMemory does not store any data, but only uses NGINX to cache data for a period of time. The idea behind GitMemory is simply to give users a better reading experience.
Nathan Freitas n8fr8 Guardian Project, Berkman Center, Developer Square Cambridge, MA https://n8fr8.github.io/me/ I have worked for over 20 years in mobile communications security software and systems, with a deep set of experience organizations, applications and platforms.

guardianproject/orbot 749

The Github home of Orbot: Tor on Android (Also available on gitlab!)

guardianproject/proofmode 111

ProofMode: Verified Visuals (A CameraV-inspired Micro App)

guardianproject/tor-android 111

Tor binary and library for Android

jtwarren/spidey 58

Android application to detect IMSI-catcher interference

n8fr8/AndroidEmojiInput 30

Android library for adding emoji, stickers and other rich media input and display

n8fr8/CameraCipher 9

CameraCipher Library (an IOCipher project)

n8fr8/AnyNews-Prototype 3

RSS PWA Mobile news reader written in JavaScript.

issue openedOpenArchive/Save-app-android

Crash when trying to add new Dropbox space

Describe the bug When adding a new space of type Dropbox, the app crashes immediately

To Reproduce Steps to reproduce the behavior:

  1. Tap on upper left hand corner icon
  2. type on upper right hand + icon
  3. choose "Dropbox" as space type
  4. CRASH!

Expected behavior flow for authenticating Dropbox is shown

Environment (please complete the following information):

  • OS version: Android 10
  • Device: Pixel 4A
  • App Version: latest in DEV

Additional context Crash log

--------- beginning of crash

2021-09-24 13:29:01.847 20779-20779/net.opendasharchive.openarchive.release E/AndroidRuntime: FATAL EXCEPTION: main Process: net.opendasharchive.openarchive.release, PID: 20779 java.lang.RuntimeException: Unable to start activity ComponentInfo{net.opendasharchive.openarchive.release/net.opendasharchive.openarchive.services.dropbox.DropboxLoginActivity}: java.lang.IllegalStateException: URI scheme in your app's manifest is not set up correctly. You should have a com.dropbox.core.android.AuthActivity with the scheme: db-foo at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3431) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3595) at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:85) at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:135) at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:95) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2066) at android.os.Handler.dispatchMessage(Handler.java:106) at android.os.Looper.loop(Looper.java:223) at android.app.ActivityThread.main(ActivityThread.java:7664) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:592) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:947) Caused by: java.lang.IllegalStateException: URI scheme in your app's manifest is not set up correctly. You should have a com.dropbox.core.android.AuthActivity with the scheme: db-foo at com.dropbox.core.android.AuthActivity.checkAppBeforeAuth(AuthActivity.java:287) at com.dropbox.core.android.Auth.startOAuth2Authentication(Auth.java:67) at com.dropbox.core.android.Auth.startOAuth2Authentication(Auth.java:27) at com.dropbox.core.android.Auth.startOAuth2Authentication(Auth.java:19) at net.opendasharchive.openarchive.services.dropbox.DropboxLoginActivity.attemptLogin(DropboxLoginActivity.kt:124) at net.opendasharchive.openarchive.services.dropbox.DropboxLoginActivity.onCreate(DropboxLoginActivity.kt:58) at android.app.Activity.performCreate(Activity.java:7994) at android.app.Activity.performCreate(Activity.java:7978) at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1309) at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3404) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3595)  at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:85)  at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:135)  at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:95)  at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2066)  at android.os.Handler.dispatchMessage(Handler.java:106)  at android.os.Looper.loop(Looper.java:223)  at android.app.ActivityThread.main(ActivityThread.java:7664)  at java.lang.reflect.Method.invoke(Native Method)  at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:592)  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:947)  2021-09-24 13:29:01.847 20779-20779/net.opendasharchive.openarchive.release E/ACRA: ACRA caught a RuntimeException for net.opendasharchive.openarchive.release java.lang.RuntimeException: Unable to start activity ComponentInfo{net.opendasharchive.openarchive.release/net.opendasharchive.openarchive.services.dropbox.DropboxLoginActivity}: java.lang.IllegalStateException: URI scheme in your app's manifest is not set up correctly. You should have a com.dropbox.core.android.AuthActivity with the scheme: db-foo at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3431) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3595) at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:85) at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:135) at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:95) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2066) at android.os.Handler.dispatchMessage(Handler.java:106) at android.os.Looper.loop(Looper.java:223) at android.app.ActivityThread.main(ActivityThread.java:7664) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:592) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:947) Caused by: java.lang.IllegalStateException: URI scheme in your app's manifest is not set up correctly. You should have a com.dropbox.core.android.AuthActivity with the scheme: db-foo at com.dropbox.core.android.AuthActivity.checkAppBeforeAuth(AuthActivity.java:287) at com.dropbox.core.android.Auth.startOAuth2Authentication(Auth.java:67) at com.dropbox.core.android.Auth.startOAuth2Authentication(Auth.java:27) at com.dropbox.core.android.Auth.startOAuth2Authentication(Auth.java:19) at net.opendasharchive.openarchive.services.dropbox.DropboxLoginActivity.attemptLogin(DropboxLoginActivity.kt:124) at net.opendasharchive.openarchive.services.dropbox.DropboxLoginActivity.onCreate(DropboxLoginActivity.kt:58) at android.app.Activity.performCreate(Activity.java:7994) at android.app.Activity.performCreate(Activity.java:7978) at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1309) at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3404) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3595)  at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:85)  at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:135)  at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:95)  at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2066)  at android.os.Handler.dispatchMessage(Handler.java:106)  at android.os.Looper.loop(Looper.java:223)  at android.app.ActivityThread.main(ActivityThread.java:7664)  at java.lang.reflect.Method.invoke(Native Method)  at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:592)  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:947)

created time in 2 days

issue commentOpenArchive/Save-app-android

Browse Existing Projects is not Functional on Save App

Confirmed as well for WebDAV/Nextcloud, as well as crash when trying to add Dropbox.

Ghranty

comment created time in 2 days

issue openedOpenArchive/Save-app-android

Batch editing is not working

Describe the bug Previously, for items NOT yet uploaded, you could batch select, then press the "Edit" pencil icon to set all the metadata fields with one shared form. Now, the items show up in a carousel, but the edit form is not displayed.

To Reproduce Steps to reproduce the behavior:

  1. Open main screen to a project
  2. Add 2 or more new items
  3. Back out to main project screen
  4. Multi-select items and press the pencil actionbar button

Expected behavior You should see the carousel of thumbnails with a shared item metadata edit form underneath that can be edited

Environment (please complete the following information):

  • OS version: Android 10
  • Device: Pixel 4A
  • App Version: latest DEVELOPMENT

created time in 2 days

issue openedOpenArchive/Save-app-android

Main screen project grid view is cut-off

Describe the bug The top line of text, either showing "# items(s) upload" or "Ready to upload" is cut-off from view

To Reproduce Steps to reproduce the behavior:

  1. Get latest build from DEVELOPMENT
  2. Open main screen to a project
  3. Add items

Expected behavior "Ready to upload" should be visible.

Screenshots It is not visible!

Environment (please complete the following information):

  • OS version: Android 10
  • Device: Pixel 4A
  • App Version : Latest DEV branch build

created time in 2 days

issue closedOpenArchive/Save-app-android

Crash report

REPORT_ID=e282a4ed-91cf-40f4-bdb8-d1f5baca2fa9 APP_VERSION_NAME=0.2.3-RC-1 APP_VERSION_CODE=20321 ANDROID_VERSION=9 PHONE_MODEL=vivo 1904 PACKAGE_NAME=net.opendasharchive.openarchive.release CRASH_CONFIGURATION=colorMode=5 densityDpi=272 extraConfig= themeId=396047746 fontScale=0.85 hardKeyboardHidden=HARDKEYBOARDHIDDEN_YES keyboard=KEYBOARD_NOKEYS keyboardHidden=KEYBOARDHIDDEN_NO locale=en_US mcc=502 mnc=18 navigation=NAVIGATION_NONAV navigationHidden=NAVIGATIONHIDDEN_YES orientation=ORIENTATION_PORTRAIT screenHeightDp=835 screenLayout=SCREENLAYOUT_SIZE_NORMAL+SCREENLAYOUT_LONG_YES+SCREENLAYOUT_LAYOUTDIR_LTR+SCREENLAYOUT_ROUND_NO screenWidthDp=423 seq=28 smallestScreenWidthDp=423 touchscreen=TOUCHSCREEN_FINGER uiMode=UI_MODE_TYPE_NORMAL+UI_MODE_NIGHT_NO userSetLocale=true windowConfiguration={ mBounds=Rect(0, 0 - 720, 1407) mAppBounds=Rect(0, 53 - 720, 1473) mWindowingMode=fullscreen mActivityType=undefined} CUSTOM_DATA= STACK_TRACE=java.lang.NullPointerException: Attempt to invoke virtual method 'boolean java.lang.String.startsWith(java.lang.String)' on a null object reference at net.opendasharchive.openarchive.fragments.MediaViewHolder.bindData(MediaViewHolder.java:112) at net.opendasharchive.openarchive.db.MediaAdapter.onBindViewHolder(MediaAdapter.java:221) at androidx.recyclerview.widget.RecyclerView$Adapter.onBindViewHolder(RecyclerView.java:7065) at androidx.recyclerview.widget.RecyclerView$Adapter.bindViewHolder(RecyclerView.java:7107) at androidx.recyclerview.widget.RecyclerView$Recycler.tryBindViewHolderByDeadline(RecyclerView.java:6012) at androidx.recyclerview.widget.RecyclerView$Recycler.tryGetViewHolderForPositionByDeadline(RecyclerView.java:6279) at androidx.recyclerview.widget.RecyclerView$Recycler.getViewForPosition(RecyclerView.java:6118) at androidx.recyclerview.widget.RecyclerView$Recycler.getViewForPosition(RecyclerView.java:6114) at androidx.recyclerview.widget.LinearLayoutManager$LayoutState.next(LinearLayoutManager.java:2303) at androidx.recyclerview.widget.GridLayoutManager.layoutChunk(GridLayoutManager.java:561) at androidx.recyclerview.widget.LinearLayoutManager.fill(LinearLayoutManager.java:1587) at androidx.recyclerview.widget.LinearLayoutManager.onLayoutChildren(LinearLayoutManager.java:665) at androidx.recyclerview.widget.GridLayoutManager.onLayoutChildren(GridLayoutManager.java:170) at androidx.recyclerview.widget.RecyclerView.dispatchLayoutStep2(RecyclerView.java:4134) at androidx.recyclerview.widget.RecyclerView.onMeasure(RecyclerView.java:3540) at android.view.View.measure(View.java:23614) at android.widget.RelativeLayout.measureChildHorizontal(RelativeLayout.java:715) at android.widget.RelativeLayout.onMeasure(RelativeLayout.java:461) at android.view.View.measure(View.java:23614) at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:7020) at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1535) at android.widget.LinearLayout.measureVertical(LinearLayout.java:825) at android.widget.LinearLayout.onMeasure(LinearLayout.java:704) at android.view.View.measure(View.java:23614) at android.widget.ScrollView.measureChildWithMargins(ScrollView.java:1363) at android.widget.FrameLayout.onMeasure(FrameLayout.java:185) at android.widget.ScrollView.onMeasure(ScrollView.java:393) at android.view.View.measure(View.java:23614) at androidx.viewpager.widget.ViewPager.onMeasure(ViewPager.java:1638) at android.view.View.measure(View.java:23614) at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:7020) at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1535) at android.widget.LinearLayout.measureHorizontal(LinearLayout.java:1187) at android.widget.LinearLayout.onMeasure(LinearLayout.java:706) at android.view.View.measure(View.java:23614) at android.widget.RelativeLayout.measureChildHorizontal(RelativeLayout.java:715) at android.widget.RelativeLayout.onMeasure(RelativeLayout.java:461) at android.view.View.measure(View.java:23614) at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:7020) at androidx.coordinatorlayout.widget.CoordinatorLayout.onMeasureChild(CoordinatorLayout.java:760) at androidx.coordinatorlayout.widget.CoordinatorLayout.onMeasure(CoordinatorLayout.java:833) at android.view.View.measure(View.java:23614) at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:7020) at android.widget.FrameLayout.onMeasure(FrameLayout.java:185) at androidx.appcompat.widget.ContentFrameLayout.onMeasure(ContentFrameLayout.java:143) at android.view.View.measure(View.java:23614) at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:7020) at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1535) at android.widget.LinearLayout.measureVertical(LinearLayout.java:825) at android.widget.LinearLayout.onMeasure(LinearLayout.java:704) at android.view.View.measure(View.java:23614) at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:7020) at android.widget.FrameLayout.onMeasure(FrameLayout.java:185) at android.view.View.measure(View.java:23614) at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:7020) at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1535) at android.widget.LinearLayout.measureVertical(LinearLayout.java:825) at android.widget.LinearLayout.onMeasure(LinearLayout.java:704) at android.view.View.measure(View.java:23614) at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:7020) at android.widget.FrameLayout.onMeasure(FrameLayout.java:185) at com.android.internal.policy.DecorView.onMeasure(DecorView.java:1268) at android.view.View.measure(View.java:23614) at android.view.ViewRootImpl.performMeasure(ViewRootImpl.java:2920) at android.view.ViewRootImpl.measureHierarchy(ViewRootImpl.java:1691) at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:1989) at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1575) at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:7636) at android.view.Choreographer$CallbackRecord.run(Choreographer.java:1029) at android.view.Choreographer.doCallbacks(Choreographer.java:834) at android.view.Choreographer.doFrame(Choreographer.java:763) at android.view.Choreographer$FrameHandler.handleMessage(Choreographer.java:937) at android.os.Handler.dispatchMessage(Handler.java:106) at android.os.Looper.loop(Looper.java:224) at android.app.ActivityThread.main(ActivityThread.java:7081) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:604) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:928)

APPLICATION_LOG=N/A BUILD=BOARD=k62v1_64_bsp BOOTLOADER=unknown BRAND=vivo CPU_ABI=arm64-v8a CPU_ABI2= DEVICE=1904 DISPLAY=PPR1.180610.011 release-keys FINGERPRINT=vivo/1904/1904:9/PPR1.180610.011/compiler12111801:user/release-keys HARDWARE=mt6762 HOST=compiler0177 ID=PPR1.180610.011 IS_DEBUGGABLE=false IS_EMULATOR=false MANUFACTURER=vivo MODEL=vivo 1904 PERMISSIONS_REVIEW_REQUIRED=false PRODUCT=1904 RADIO=unknown SERIAL=unknown SUPPORTED_32_BIT_ABIS=["armeabi-v7a","armeabi"] SUPPORTED_64_BIT_ABIS=["arm64-v8a"] SUPPORTED_ABIS=["arm64-v8a","armeabi-v7a","armeabi"] TAGS=release-keys TIME=1607681480000 TYPE=user UNKNOWN=unknown USER=compiler VERSION.ACTIVE_CODENAMES=[] VERSION.BASE_OS= VERSION.CODENAME=REL VERSION.FIRST_SDK_INT=28 VERSION.INCREMENTAL=compiler12111801 VERSION.PREVIEW_SDK_INT=0 VERSION.RELEASE=9 VERSION.RESOURCES_SDK_INT=28 VERSION.SDK=28 VERSION.SDK_INT=28 VERSION.SECURITY_PATCH=2020-11-01 IS_SILENT=false USER_CRASH_DATE=2021-01-05T07:35:22.742+08:00

closed time in 2 days

n8fr8

push eventOpenArchive/Save-app-android

ozgegundogdu

commit sha ac17095471e77c7a0fb24da52077516f417766bf

activities and fragments are converted to Kotlin

view details

ozgegundogdu

commit sha 850e18662826fadc4d2b37ee3d72280d78501db4

Media classes are updated to kotlin

view details

ozgegundogdu

commit sha f10c742fc0c80a191e8af798bcc48b673901c56a

Project classes are converted to Kotlin

view details

ozgegundogdu

commit sha 99b410010d66a1ff5d15f5b4ddba9d2253a97ce1

binding cleaning

view details

ozgegundogdu

commit sha 6374c8d8d5b6aa9d037bca63fc59c53d22a4d667

refactor fixes, MainActivity is converted to Kotlin

view details

ozgegundogdu

commit sha bb02e3f7b8989a0f6212f8aaf0ddb21a4d26e583

Merge branch 'development' of https://github.com/OpenArchive/Save-app-android into feature/kotlin-conversion-phase-3  Conflicts:  app/src/main/java/net/opendasharchive/openarchive/MainActivity.java  app/src/main/java/net/opendasharchive/openarchive/core/SettingsActivity.java  app/src/main/java/net/opendasharchive/openarchive/core/SpaceSettingsActivity.java  app/src/main/java/net/opendasharchive/openarchive/db/MediaViewHolder.kt  app/src/main/java/net/opendasharchive/openarchive/media/PreviewMediaListActivity.java  app/src/main/java/net/opendasharchive/openarchive/media/ReviewMediaActivity.java  app/src/main/java/net/opendasharchive/openarchive/onboarding/EulaActivity.java  app/src/main/java/net/opendasharchive/openarchive/onboarding/OAAppIntro.java

view details

ozgegundogdu

commit sha dd576bfde18e33b1e4e1e7e0884604c964cf0c11

conflicts are resolved

view details

ozgegundogdu

commit sha c1294d6501fefa07e766eaf907c8fee49b0554aa

mvvm, workermanager implementation

view details

ozgegundogdu

commit sha cb454c01f594f410f9443c8a880c4a1eaf03e4d0

batchviewmodel, view extensions

view details

ozgegundogdu

commit sha b6496b24c6af2c694c5bb4cad508b7b9c201dbda

mediagridviewmodel

view details

ozgegundogdu

commit sha f39e72dc78faadc82ddaafe463ddc48b9034e379

medialistviewmodel

view details

ozgegundogdu

commit sha 02f0c73cd547f069bdef49220f6cf75b958aebf3

delete function is updated

view details

ozgegn

commit sha f9b3acc85146545c92320805d8d52a0463000306

media uploading ui changes

view details

ozgegn

commit sha dbd8a0a113483516e8b2d029e1936454b66368cb

dropbox api key is updated

view details

ozgegn

commit sha a92fdcab57c393440173f27509c788450f4dd22f

ArchiveOrgLoginActivity kotlin conversion

view details

ozgegn

commit sha 9765b9c4e5c24e414e5f1855bfc2e28cc64cb64c

ArchiveSettingsActivity kotlin conversion

view details

ozgegn

commit sha 7dea5f11fb563d80e4067076ae3fda7a5bf014bc

Dropbox kotlin conversion

view details

ozgegn

commit sha ad541c6fbc591c902c9d782c13cd379bb2d05d56

uploadmanager not showing list fixed

view details

ozgegn

commit sha cfd69aa32cfa2f379d427a78875cb5dc7894396f

dropbox kotlin conversion

view details

ozgegn

commit sha d8e9958e229cf02354d3774f34e7791fadf11d23

webdav kotlin conversion

view details

push time in 2 days

PR merged OpenArchive/Save-app-android

Reviewers
Feature/kotlin conversion phase 3

Hi @n8fr8 , I implemented MVVM and WorkerManager. I created a PR for you to see new improvements. We can discuss about code here.

PS: Please don't hurry to merge, the branch wasn't still tested :)

+7420 -8561

6 comments

125 changed files

ozgegn

pr closed time in 2 days

issue commentguardianproject/orbot

Adaptive icon support

If someone can produce the new icon asset, we wouldn't definitely integrate it right away.

staticssleever668

comment created time in 11 days

issue openedonionshare/onionshare-shared

Onion link, capability formatting

  • v3 client auth cookie?
  • obfs4 bridge included?

created time in 23 days

pull request commentOpenArchive/Save-app-android

Feature/kotlin conversion phase 3

Back on this code now, and will ping you on Slack when I have questions.

ozgegn

comment created time in 25 days

issue commentonionshare/onionshare-shared

Implement "OnionShare-Core" shared codebase for Android and iOS

@tladesignz may have swayed me here....

+1 on "-> Share the API and a test suite specification, but implement platform-specific."... it may be a best way to spend time to have a clear API/specification and to write a solid test/compliance suite, then to wrestle with the frustration and challenges of cross-platform languages and tooling on mobile devices.

The "GCDWebServer" is also a good example where there is a robust module we can use out of the box on the iOS platform, that provides us a huge amount of the functionality we need. We shouldn't discount the complexity of writing a web server.

The only downside to this approach is that, in the end, we would be left with 3 implementations of the same "core" functionality (Python-Desktop, Kotlin-Android, Swift-iOS) to maintain. Perhaps that is unavoidable given that at least some aspects of those apps will be in those languages with native UI and OS integration needs. At some point, the Swift-iOS app could/should become the MacOS desktop app, as well, if we build it right.

n8fr8

comment created time in a month

issue commentonionshare/onionshare-shared

Implement "OnionShare-Core" shared codebase for Android and iOS

That said, given the future of Tor in Rust, and the fact that @tladesignz is feeling good about Rust these days given recent success using it in another project, it makes sense to consider that as well.

I have no idea about how Kotlin multiplatform is on iOS. We are happy using Kotlin in lieu of Java on the Android side for apps of course, but can't get my head around using it as a cross-platform "core lib" type service.

n8fr8

comment created time in a month

issue commentonionshare/onionshare-shared

Implement "OnionShare-Core" shared codebase for Android and iOS

I agree with @micahflee on the scope being the "cli".

We have had great success with shared codebase between Android and iOS using Go with Tor Pluggable Transports. The only downside there is memory usage and binary size. I think the kind of functions outlined here would work very well with a Go codebase.

n8fr8

comment created time in a month

issue closedguardianproject/tor-browser

[Bug] Addons are not being installed in Android

Even though new addons is shown to be installed after installing, there are not enabled when browsing. The hamburger menu with addons subsection doesn't show the new installed addons.

Android version number 10.5.5 (91.2.0).

closed time in a month

mystic-githuber

issue commentguardianproject/tor-browser

[Bug] Addons are not being installed in Android

this project is now closed. The Tor Project is now directly managing Tor Browser for Android.

https://gitlab.torproject.org/explore/projects/trending

mystic-githuber

comment created time in a month

issue commentonionshare/onionshare-shared

Implement "OnionShare-Core" shared codebase for Android and iOS

(just to clarify, this is all non-user interface code)

  • start/stop an http web server running on localhost at a random or specified port
  • manage links to files / packages / zips for sharing
  • generate download urls for sharing that point to packages on localhost web server
  • track / report on progress of downloads via listener interface/callbacks
n8fr8

comment created time in a month

issue openedonionshare/onionshare-shared

Implement "OnionShare-Core" shared codebase for Android and iOS

Is it possible? A good idea?

Go or Rust?

What does it need to do?

created time in a month

issue closedguardianproject/orbot

Why the official Tor Browser has meek while Orbot doesn't have meek?

Why I can't choose meek as bridge?

closed time in a month

corkia1

issue commentguardianproject/orbot

Why the official Tor Browser has meek while Orbot doesn't have meek?

We were told Meek was no longer going to be available due to MSFT Azure disabling the domain fronting technology. Meek is also easily overwhelmed by users.

Best to either use Snowflake (which is similar to Meek in may ways), or request new bridges from the Tor Bridge service, using the built in process Orbot now offers.

corkia1

comment created time in a month

issue openedvector-im/element-android

[SDK] how to filter Timeline Events?

This is for Android SDK2.

There used to be the ability to easily filter events in a Timeline instance using the class below:

        val tFilter = TimelineEventFilters(filterEdits = true, filterRedacted = true, filterUseless = true, filterTypes = true)

However, at some point, the option to set this in the TimelineSettings was removed, and we can't figure out how/where to filter timeline events. The issue is that, for instance with edited messages, we are now displaying both the original event with the edited message, and the new "replaces" event.

While we can parse through the events and try to figure out which ones to show and hide, it is a bit frustrating that something that was working nicely before was removed.

created time in a month

push eventguardianproject/orbot

n8fr8

commit sha 0a296e87d3c0708467544f91a19aa4b77a83f9d5

add tv screenshots to fastlane

view details

push time in a month

push eventguardianproject/tor-android

n8fr8

commit sha c5d5b2c00876cbf2e697668dd14ff6021ea18c7b

Revert "TorService shouldn't filter events" This reverts commit db4dec50d3c95ee0860a6b97cdc856c0b36f89c8.

view details

push time in a month

pull request commentguardianproject/orbot

Fixes #474 Remove Briar from Orbot VPN Routing + UI

fixed here: https://github.com/guardianproject/orbot/commit/482696b9b6442e9b636fb6c299bd2b67c8810df7

bitmold

comment created time in a month

PR merged guardianproject/orbot

Reviewers
Fixes #474 Remove Briar from Orbot VPN Routing + UI

This introduces a compile time list of packages to ignore from VPN routing and the app selection UI

Packages can be added by modifying the list in OrbotServices VpnPrefs.

I also removed Tor Browser and Tor Browser Alpha. This goes beyond the Briar in #474, but is likely something we want. I could imagine confused users getting both Orbot and Tor Browser and stumbling into a slow (among other issues...) Tor Over Tor situation.

+25 -12

3 comments

4 changed files

bitmold

pr closed time in a month

push eventguardianproject/orbot

bim

commit sha 9759e94faebaa6d71e8230d15170b0a72d28be39

Fixes #474 Remove Briar from Orbot VPN Routing + UI Also removes Tor Browser and Tor Browser Alpha

view details

n8fr8

commit sha a85658355877a3c97f403ed56d36e5191fccad08

Merge branch 'vpn_blocklist' of https://github.com/bitmold/orbot into bitmold-vpn_blocklist

view details

n8fr8

commit sha 482696b9b6442e9b636fb6c299bd2b67c8810df7

only set disallowed if "per app" is not being used

view details

n8fr8

commit sha 6287db6d2a4dfc5fcd3c4c971b227c8d8a9e7ebf

Merge branch 'bitmold-vpn_blocklist'

view details

push time in a month

issue closedguardianproject/orbot

Exclude Briar from full device VPN

The Briar messaging app includes its own copy of Tor, which is unable to connect to the Tor network when Orbot is providing a full device VPN. Please exclude Briar from the list of affected apps when providing a full device VPN.

Ideally, please also exclude Briar from the list of Tor-enabled apps when VPN mode is enabled for selected apps, as selecting Briar in this list breaks Briar's Tor connectivity.

closed time in a month

akwizgran

pull request commentguardianproject/orbot

Fixes #474 Remove Briar from Orbot VPN Routing + UI

Seems to work. Having issues committing it here though.

bitmold

comment created time in a month

pull request commentguardianproject/orbot

Fixes #474 Remove Briar from Orbot VPN Routing + UI

  •    for (String packageName : VpnPrefs.BYPASS_VPN_PACKAGES)
    
  •        builder.addDisallowedApplication(packageName);
    
  •    if (!perAppEnabled)
    
  •    if (!perAppEnabled) {
           builder.addDisallowedApplication(mService.getPackageName());
    
  •        for (String packageName : VpnPrefs.BYPASS_VPN_PACKAGES)
    
  •            builder.addDisallowedApplication(packageName);
    
  •    }
    
bitmold

comment created time in a month

create barnchguardianproject/orbot

branch : bitmold-vpn_blocklist

created branch time in a month

pull request commentguardianproject/orbot

Fixes #474 Remove Briar from Orbot VPN Routing + UI

This is the error I get when I used this where I already have an allowed application set:

java.lang.UnsupportedOperationException: addAllowedApplication already called
    at android.net.VpnService$Builder.addDisallowedApplication(VpnService.java:770)
    at org.torproject.android.service.vpn.OrbotVpnManager.doLollipopAppRouting(OrbotVpnManager.java:356)
    at org.torproject.android.service.vpn.OrbotVpnManager.-$$Nest$mdoLollipopAppRouting(Unknown Source:0)
    at org.torproject.android.service.vpn.OrbotVpnManager$2.run(OrbotVpnManager.java:294)

Should this code not run if I have chosen specific apps to proxy?

bitmold

comment created time in a month