project file cleanup
This commit is contained in:
parent
daf89658dc
commit
da061f40e3
45
GSoC.txt
45
GSoC.txt
|
@ -1,45 +0,0 @@
|
||||||
GSoC Plan
|
|
||||||
=========
|
|
||||||
|
|
||||||
A tl;dr version
|
|
||||||
---------------
|
|
||||||
I will be improving the Orbot UI/UX, and adding several features such as data statistics and also
|
|
||||||
implementing the TorCheck API. I plan on extending the ORLib library and also creating an ORLib enabled
|
|
||||||
app as a sort of primer for other third party apps to follow
|
|
||||||
|
|
||||||
The full version
|
|
||||||
----------------
|
|
||||||
|
|
||||||
Orbot UI/UX
|
|
||||||
===========
|
|
||||||
At the moment, the Orbot UI/UX is clustered and not very intuitive. I plan on improving the existing
|
|
||||||
elements of the UI and also add a variety of new features such as
|
|
||||||
|
|
||||||
* A new Set – up Wizard ( which checks for iptables )
|
|
||||||
* Changes to the preferences ( should be made to follow the Android guidelines)
|
|
||||||
|
|
||||||
Orbot Core app work
|
|
||||||
===================
|
|
||||||
At the moment, Orbot displays a successful connection without actually checking the connection. This is a
|
|
||||||
pressing issue, because the user is not notified if the set-up has failed, unless he/she manually checks
|
|
||||||
the torcheck web service. This should be made automatic by making using of the TorCheck API. Also, Orbot
|
|
||||||
should be configured to show more information about the data being transmitted such as -
|
|
||||||
|
|
||||||
* Amount of data transferred
|
|
||||||
* Quality of the connection
|
|
||||||
* Number of circuits connected
|
|
||||||
|
|
||||||
ORLib
|
|
||||||
=====
|
|
||||||
Currently, ORLib is very minimal at the moment, both in term of features and support/documentation. ORLib
|
|
||||||
is very critical to the use of Orbot as it provides transparent proxying on non-rooted devices ( A major
|
|
||||||
chunk of android phones are un-rooted). I intend to -
|
|
||||||
|
|
||||||
* Improve the existing library by adding additional features
|
|
||||||
* Check for existing of Orbot
|
|
||||||
* Check status of connection to Tor
|
|
||||||
* Provide option to start Orbot via intent
|
|
||||||
* Request hidden service by port, and get return hidden service .onion address
|
|
||||||
* Create an ORLib enabled “Twitter, Status.net or other micro blogging Client” – A sort of primer for
|
|
||||||
third-party apps
|
|
||||||
* Improve the documentation
|
|
6
README
6
README
|
@ -9,7 +9,7 @@ HTTP client applications into the Tor SOCKS interface.
|
||||||
***********************************************
|
***********************************************
|
||||||
Orbot is a component of the Guardian Project, an effort to develop
|
Orbot is a component of the Guardian Project, an effort to develop
|
||||||
a secure, anonymous smartphone for use by human rights activists, journalists
|
a secure, anonymous smartphone for use by human rights activists, journalists
|
||||||
and others around the world. Learn more: http://guardianproject.info/
|
and others around the world. Learn more: https://guardianproject.info/
|
||||||
|
|
||||||
***********************************************
|
***********************************************
|
||||||
Tor protects your privacy on the internet by hiding the connection
|
Tor protects your privacy on the internet by hiding the connection
|
||||||
|
@ -23,5 +23,5 @@ Tor Frequently Asked Questions:
|
||||||
|
|
||||||
***********************************************
|
***********************************************
|
||||||
|
|
||||||
/* Copyright (c) 2009-2010, Nathan Freitas, The Guardian Project
|
/* Copyright (c) 2009-2012, Nathan Freitas, The Guardian Project
|
||||||
* http://guardianproject.info/ */
|
* https://guardianproject.info/ */
|
||||||
|
|
90
WALKTHROUGH
90
WALKTHROUGH
|
@ -1,90 +0,0 @@
|
||||||
|
|
||||||
.
|
|
||||||
└── org
|
|
||||||
└── torproject
|
|
||||||
└── android
|
|
||||||
├── AppManager.java
|
|
||||||
//this is what helps us track the app-by-app torification
|
|
||||||
//and gets the app name, icon, etc for display - we have some problems here
|
|
||||||
//in normalizing the icon on the list label
|
|
||||||
//some of this code came originally from DroidWall project (yay open source)
|
|
||||||
|
|
||||||
├── boot
|
|
||||||
│ └── OnbootBroadcastReceiver.java
|
|
||||||
//i think this is a dup now and should be removed
|
|
||||||
|
|
||||||
├── HiddenServiceManager.java
|
|
||||||
//empty! but at some point i thought it would be good to aggregate HS functions here
|
|
||||||
|
|
||||||
├── OnBootReceiver.java
|
|
||||||
//this is the class registered in AndroidManifest.xml to handle Onboot events
|
|
||||||
//to start Orbot/Tor when the device boots if the user has elected to do so - what kind of permissions does this require?
|
|
||||||
// <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/>
|
|
||||||
// BTW, this shows up as a fairly unintrusive type perm request now in Android / in older versions (1.6 and earlier)
|
|
||||||
// it was reported "as read / monitor phone state" and paranoid Tor-types didn't like the idea of it
|
|
||||||
// in 1.6+ it has a much better UX in terms of having a more granular permisions around boot since it is a very
|
|
||||||
// common request - ah , that's awesome, i think i remember seeing sth of this sorts when i was going through the guardianproject mailing list. iirc this is something ioerror wanted
|
|
||||||
|
|
||||||
|
|
||||||
├── Orbot.java
|
|
||||||
//our wonderful main activity!
|
|
||||||
|
|
||||||
├── ProcessSettingsAsyncTask.java
|
|
||||||
//this was just added in 1.0.5.x, but it was meant to help stop the UI blocking while processing settings and prefs
|
|
||||||
//it uses the AsyncTask feature of Android, which seems to work pretty well
|
|
||||||
//for this type of non-time critical function you just want to happen in the background at some point soon-ish
|
|
||||||
|
|
||||||
├── SettingsPreferences.java
|
|
||||||
// Settings activity that loads the res/xml/preferences.xml resource up
|
|
||||||
// has some custom event handlng, onActivityResult callback result code's as well
|
|
||||||
// basically meant to tell Orbot activity if critical settings have been modified and whether
|
|
||||||
// those new settings should be applied (like iptables/transproxy changes)
|
|
||||||
|
|
||||||
├── TorConstants.java
|
|
||||||
// globals! well, constants! but yeah, just a place to put values we use a lot
|
|
||||||
|
|
||||||
├── TorifiedApp.java
|
|
||||||
// object to store a single app's metadata for display in UI and for transproxy process
|
|
||||||
|
|
||||||
├── Utils.java
|
|
||||||
// random methods that can be useful, a.k.a. another place to put stuff
|
|
||||||
|
|
||||||
├── WizardActivity.java
|
|
||||||
// our original attempt at wizard activity that didn't get far
|
|
||||||
|
|
||||||
└── WizardHelper.java
|
|
||||||
// the helper class that manages the dialog based wizard
|
|
||||||
|
|
||||||
├── service //okay the Service subpackage!
|
|
||||||
|
|
||||||
│ ├── Api.java
|
|
||||||
//this is more code taken from DroidWall, that needs to be cleaned up and paired down to just what we need it for
|
|
||||||
//this is related to 1.0.5.x changes with how we bundle and install our C binaries (tor, privoxy and iptables)
|
|
||||||
|
|
||||||
│ ├── ITorService.aidl
|
|
||||||
// the android remote interface definition file;
|
|
||||||
// this is the remote interface which the Orbot activity gets a reference to
|
|
||||||
// and that in the TorService is instantiated as the "binder"
|
|
||||||
|
|
||||||
│ ├── ITorServiceCallback.aidl
|
|
||||||
// this is the callback interface that the Orbot activity instantiates, and passes
|
|
||||||
// to the ITorService; reverse of ITorService in a sense
|
|
||||||
|
|
||||||
│ ├── TorBinaryInstaller.java
|
|
||||||
// this handles installation of binaries; uses Api.java; // tied into Wizard as well
|
|
||||||
|
|
||||||
│ ├── TorServiceConstants.java
|
|
||||||
// reusable constants for just the Service package
|
|
||||||
|
|
||||||
│ ├── TorService.java
|
|
||||||
// the main might powerful service class; Orbot and TorService are the front and backends of this whole app
|
|
||||||
// should run as a remote service, but the manifest doesn't seem to indicate that at the moment
|
|
||||||
|
|
||||||
│ ├── TorServiceUtils.java
|
|
||||||
//utility methods for the service; specificaly check for root and tools for finding processID of background binaries
|
|
||||||
|
|
||||||
│ └── TorTransProxy.java
|
|
||||||
// all the code for iptables transproxying management
|
|
||||||
|
|
||||||
|
|
||||||
|
|
78
po2xml.sh
78
po2xml.sh
|
@ -1,78 +0,0 @@
|
||||||
#!/bin/bash
|
|
||||||
#
|
|
||||||
# Author: Runa A. Sandvik, <runa.sandvik@gmail.com>
|
|
||||||
# For The Tor Project, Inc.
|
|
||||||
#
|
|
||||||
# This is Free Software (GPLv3)
|
|
||||||
# http://www.gnu.org/licenses/gpl-3.0.txt
|
|
||||||
#
|
|
||||||
# This script will convert translated po files back to xml. Before
|
|
||||||
# running the script, checkout the translation directory from
|
|
||||||
# https://svn.torproject.org.
|
|
||||||
#
|
|
||||||
|
|
||||||
### Start config ###
|
|
||||||
|
|
||||||
# Location of the translated files, i.e. the path to the orbot
|
|
||||||
# directory in the translation module. Do not add the trailing slash.
|
|
||||||
translated="/home/runa/tor/translation/projects/orbot"
|
|
||||||
|
|
||||||
# Location of the orbot directory, i.e. the original English xml file.
|
|
||||||
# In svn, this should be svn/projects/android/trunk/Orbot/res. Do not add the
|
|
||||||
# trailing slash.
|
|
||||||
xml="/home/runa/tor/orbot/res"
|
|
||||||
|
|
||||||
### End config ###
|
|
||||||
|
|
||||||
# Find po files to convert.
|
|
||||||
po=`find $translated -type f -name \*.po`
|
|
||||||
|
|
||||||
# For every po found, create and/or update the translated manpage.
|
|
||||||
for file in $po ; do
|
|
||||||
|
|
||||||
# Validate input and write results to a log file
|
|
||||||
validate_script="/home/runa/tor/translation/tools/validate.py"
|
|
||||||
validate_log="/home/runa/tor/validate/orbot-validate.log"
|
|
||||||
python "$validate_script" -i "$file" -l "$validate_log"
|
|
||||||
|
|
||||||
# Get the basename of the file we are dealing with.
|
|
||||||
pofile=`basename $file`
|
|
||||||
|
|
||||||
# Strip the file for its original extension and add .xml.
|
|
||||||
xmlfile="${pofile%.*}.xml"
|
|
||||||
|
|
||||||
# Figure out which language we are dealing with.
|
|
||||||
dir=`dirname $file | sed "s#$translated/##"`
|
|
||||||
lang=`basename $dir`
|
|
||||||
|
|
||||||
# The translated document is written if 80% or more of the po
|
|
||||||
# file has been translated. Also, po4a-translate will only write
|
|
||||||
# the translated document if 80% or more has been translated.
|
|
||||||
# However, it will delete the translated txt if less than 80%
|
|
||||||
# has been translated. To avoid having our current, translated
|
|
||||||
# xml files deleted, convert the po to a temp xml first. If this
|
|
||||||
# file was actually written, rename it to xml.
|
|
||||||
|
|
||||||
# Convert translated po to xml.
|
|
||||||
function convert {
|
|
||||||
po4a-translate -f xml -m "$xml/values/$xmlfile" -p "$file" -l "$xml/values-$lang/tmp-$xmlfile" --master-charset utf-8 -L utf-8
|
|
||||||
|
|
||||||
# Check to see if the file was written. If yes, rename it.
|
|
||||||
if [ -e "$xml/values-$lang/tmp-$xmlfile" ]
|
|
||||||
then
|
|
||||||
mv "$xml/values-$lang/tmp-$xmlfile" "$xml/values-$lang/$xmlfile"
|
|
||||||
|
|
||||||
# We need to escape apostrophe's
|
|
||||||
sed -i "s/\([^\\]\)'/\1\\\\'/g" "$xml/values-$lang/$xmlfile"
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
# If the current directory is zh_CN use zh, else convert everything.
|
|
||||||
if [ $lang = "zh_CN" ]
|
|
||||||
then
|
|
||||||
lang="zh"
|
|
||||||
convert
|
|
||||||
else
|
|
||||||
convert
|
|
||||||
fi
|
|
||||||
done
|
|
Loading…
Reference in New Issue