From 60a09d8cf0a0d0d076ef3558829fd7c111dd0cb0 Mon Sep 17 00:00:00 2001 From: CoderSherlock Date: Thu, 8 Sep 2016 23:16:21 -0400 Subject: [PATCH] I lost my blog --- 404.html | 0 about/index.html | 239 ------------ categories/cross-compile/index.html | 204 ---------- categories/cross-compile/index.xml | 200 ---------- categories/cross-compile/page/1/index.html | 1 - categories/experiment/index.html | 188 --------- categories/experiment/index.xml | 47 --- categories/experiment/page/1/index.html | 1 - categories/game/index.html | 188 --------- categories/game/index.xml | 41 -- categories/game/page/1/index.html | 1 - categories/hack/index.html | 188 --------- categories/hack/index.xml | 41 -- categories/hack/page/1/index.html | 1 - categories/index.html | 179 --------- css/custom.css | 1 - css/styles.css | 216 ----------- draft/index.md | 5 + index.html | 266 +------------ index.xml | 274 ------------- page/1/index.html | 1 - post/Cross-Compile-RSync-ARM/index.html | 276 -------------- post/Cross-Compile-Seafile-2-ARM/index.html | 360 ------------------ post/Pokemon-Go-Hack/index.html | 252 ------------ .../index.html | 258 ------------- post/index.html | 236 ------------ post/index.xml | 260 ------------- post/page/1/index.html | 1 - sitemap.xml | 34 -- tags/android/index.html | 220 ----------- tags/android/index.xml | 233 ------------ tags/android/page/1/index.html | 1 - tags/arm/index.html | 204 ---------- tags/arm/index.xml | 200 ---------- tags/arm/page/1/index.html | 1 - tags/game/index.html | 188 --------- tags/game/index.xml | 41 -- tags/game/page/1/index.html | 1 - tags/github/index.html | 188 --------- tags/github/index.xml | 41 -- tags/github/page/1/index.html | 1 - tags/hack/index.html | 188 --------- tags/hack/index.xml | 41 -- tags/hack/page/1/index.html | 1 - tags/index.html | 183 --------- tags/research/index.html | 220 ----------- tags/research/index.xml | 233 ------------ tags/research/page/1/index.html | 1 - 48 files changed, 24 insertions(+), 6121 deletions(-) delete mode 100644 404.html delete mode 100644 about/index.html delete mode 100644 categories/cross-compile/index.html delete mode 100644 categories/cross-compile/index.xml delete mode 100644 categories/cross-compile/page/1/index.html delete mode 100644 categories/experiment/index.html delete mode 100644 categories/experiment/index.xml delete mode 100644 categories/experiment/page/1/index.html delete mode 100644 categories/game/index.html delete mode 100644 categories/game/index.xml delete mode 100644 categories/game/page/1/index.html delete mode 100644 categories/hack/index.html delete mode 100644 categories/hack/index.xml delete mode 100644 categories/hack/page/1/index.html delete mode 100644 categories/index.html delete mode 100644 css/custom.css delete mode 100644 css/styles.css create mode 100644 draft/index.md delete mode 100644 index.xml delete mode 100644 page/1/index.html delete mode 100644 post/Cross-Compile-RSync-ARM/index.html delete mode 100644 post/Cross-Compile-Seafile-2-ARM/index.html delete mode 100644 post/Pokemon-Go-Hack/index.html delete mode 100644 post/Rsync_Experiment_Towards_X86_VS_ARM/index.html delete mode 100644 post/index.html delete mode 100644 post/index.xml delete mode 100644 post/page/1/index.html delete mode 100644 sitemap.xml delete mode 100644 tags/android/index.html delete mode 100644 tags/android/index.xml delete mode 100644 tags/android/page/1/index.html delete mode 100644 tags/arm/index.html delete mode 100644 tags/arm/index.xml delete mode 100644 tags/arm/page/1/index.html delete mode 100644 tags/game/index.html delete mode 100644 tags/game/index.xml delete mode 100644 tags/game/page/1/index.html delete mode 100644 tags/github/index.html delete mode 100644 tags/github/index.xml delete mode 100644 tags/github/page/1/index.html delete mode 100644 tags/hack/index.html delete mode 100644 tags/hack/index.xml delete mode 100644 tags/hack/page/1/index.html delete mode 100644 tags/index.html delete mode 100644 tags/research/index.html delete mode 100644 tags/research/index.xml delete mode 100644 tags/research/page/1/index.html diff --git a/404.html b/404.html deleted file mode 100644 index e69de29..0000000 diff --git a/about/index.html b/about/index.html deleted file mode 100644 index 4477c37..0000000 --- a/about/index.html +++ /dev/null @@ -1,239 +0,0 @@ - - - - - - - - - - - - - - - - - about me - Mil años de solitario - - - - - - - - - - - - -
- -
- -
-
- - - -
- -
-
- -
- - - - - - -
- - - -
-
-
- - - -
- -
- - -
- -

about me

-
- -
-

2012 - Coder Sherlock -2013 - Sherlock Hao -2015 - Jon Hao

- -

Email me

- -
- - - - -
- -
-
- - - - -
-
- -
- -
-
- - - - - - - - - - - - - - - diff --git a/categories/cross-compile/index.html b/categories/cross-compile/index.html deleted file mode 100644 index 52a3eaf..0000000 --- a/categories/cross-compile/index.html +++ /dev/null @@ -1,204 +0,0 @@ - - - - - - - - - - - - - - - - - Cross Compile - Mil años de solitario - - - - - - - - - - - - -
- -
- -
-
- - -
- -
-
-
Cross Compile
- - -
-
-
Mon, Aug 15, 2016
- -
-
As always, feel free to ask. // Sherlock Motivation I got some issues about compile seafile to android, so instead of doing so, I start to figure out some other synchronize workflow. Rsync is one of the most mature synchronization solution. So I made the decision on planting rsync to android. Pre-work Rsync is a sync program with delta sync feature and based on SSH connection. So all we need to do is SSH support and cross compile tool-chain.
- - - - -
-
- - -
-
-
Sat, Jul 30, 2016
- -
-
Motivation This project is working for delta sync from mobile to server. Currently, there’s no mobile program/solution has supporting to delta sync(Include Dropbox/ Goggle Drive). But the truth is that almost every pc version sync program can work as delta sync properly or not. So in this article, I’ll provide a workbench for cross compilation and evaluation. And finally come up with a reason of how to port better incremental synchronize solution on mobile platform.
- - - - -
-
- - - - - -
-
- - - - -
-
- -
-
-
- - - - - - - - - - - - - - - diff --git a/categories/cross-compile/index.xml b/categories/cross-compile/index.xml deleted file mode 100644 index b895e08..0000000 --- a/categories/cross-compile/index.xml +++ /dev/null @@ -1,200 +0,0 @@ - - - - Cross Compile on Mil años de solitario - https://CoderSherlock.github.io/categories/cross-compile/ - Recent content in Cross Compile on Mil años de solitario - Hugo -- gohugo.io - en-us - Copyright (c) 2016 - 2016, Pengzhan Hao; all rights reserved. - Mon, 15 Aug 2016 15:44:05 -0400 - - - - Cross Compile RSync ARM - https://codersherlock.github.io/post/Cross-Compile-RSync-ARM/ - Mon, 15 Aug 2016 15:44:05 -0400 - - https://codersherlock.github.io/post/Cross-Compile-RSync-ARM/ - - -<p>As always, feel free to ask. // Sherlock</p> - -<h1 id="motivation">Motivation</h1> - -<p>I got some issues about compile seafile to android, so instead of doing so, I start to figure out some other synchronize workflow. <a href="https://rsync.samba.org/">Rsync</a> is one of the most mature synchronization solution. So I made the decision on planting rsync to android.</p> - -<h1 id="pre-work">Pre-work</h1> - -<p>Rsync is a sync program with delta sync feature and based on SSH connection. So all we need to do is SSH support and cross compile tool-chain. Similar to what I mentioned in <a href="https://codersherlock.github.io/post/Cross-Compile-Seafile-2-ARM/">previews blog</a>, Android NDK and environment export need to be done before compilation. -To enable normally use of compiled program, we need to make android support SSH. My solution is just install <a href="https://play.google.com/store/apps/details?id=berserker.android.apps.sshdroid&amp;hl=en">SSHDroid</a> from Google Play Store.</p> - -<h1 id="cross-compile-rsync">Cross-Compile Rsync</h1> - -<p>Running following script to build rsync. It will generate a executable file named rsync in the root directory.</p> - -<pre><code>$ ./configure --build=${BUILD_SYS} --host=${TOOLCHAIN} -$ make -</code></pre> - -<h1 id="push-rsync-to-android">Push RSync to Android.</h1> - -<p>After installing SSHDroid, we can now push our arm-version-rsync to target machine.</p> - -<pre><code>$ adb push rsync /data/local/tmp -$ adb shell - -$ cd /data/data/berserker.android.apps.sshdroid/dropbear -$ mv ../../../local/tmp/rsync . -</code></pre> - -<h1 id="run-rsync-with-argument">Run Rsync with argument</h1> - -<p>Now we can easily use rsync in android shell. Similar to what we use on PC.</p> - -<pre><code>$ ./rsync -e &quot;./ssh&quot; {target-data} {target-location}:{target-directory} -</code></pre> - -<h1 id="references">References</h1> - -<p><a href="http://stackoverflow.com/questions/8130889/build-rsync-for-android">Build Rsync for Android</a></p> - - - - - Cross Compile Seafile to ARM - https://codersherlock.github.io/post/Cross-Compile-Seafile-2-ARM/ - Sat, 30 Jul 2016 14:02:34 -0400 - - https://codersherlock.github.io/post/Cross-Compile-Seafile-2-ARM/ - - -<h1 id="motivation">Motivation</h1> - -<p>This project is working for delta sync from mobile to server. Currently, there&rsquo;s no mobile program/solution has supporting to delta sync(Include Dropbox/ Goggle Drive). But the truth is that almost every pc version sync program can work as delta sync properly or not. So in this article, I&rsquo;ll provide a workbench for cross compilation and evaluation. And finally come up with a reason of how to port better incremental synchronize solution on mobile platform.</p> - -<h1 id="pre-work">Pre-work</h1> - -<p>Basically, I used the native android compilation tool-chains, <a href="https://developer.android.com/ndk/downloads/index.html">Android NDK</a>, as working tools. Due to my working situation, I use a <a href="https://shield.nvidia.com/tablet/k1">Nvidia Shield Tablet</a> as target device. As <em>Zengwen</em> said in his <a href="http://zwyuan.github.io/2016/07/17/cross-compile-glib-for-android/">blog</a>, newest updated NDK might has some issue which can influence compilation progress. So you can find <a href="http://stackoverflow.com/questions/6849981/where-do-i-find-old-versions-of-android-ndk">other version</a> of NDK once you have some problems. Based on what <em>Zengwen&rsquo;s</em> blog mentioned, we can write following useful system environment and export in terminal.</p> - -<h2 id="prerequisites">Prerequisites</h2> - -<pre><code>$ sudo apt-get install build-essential -$ sudo apt-get install pkg-config automake autoconf libtool -</code></pre> - -<h2 id="link-with-standalone-tool-chains">Link with standalone tool-chains</h2> - -<p>In order to build standalone tool-chains, we need first to export following system environment. After doing that, we can use following command to build a standalone tool-chains from downloaded NDK.</p> - -<pre><code>$ ${NDK}/build/tools/make-standalone-toolchain.sh \ - --toolchain=arm-linux-androideabi-4.9 \ - --stl=gnustl \ - --arch=arm \ - --ndk-dir=/home/moslab/Android/android-ndk-r12b \ - --package-dir=/home/moslab/Android \ - --install-dir=/home/moslab/Android/android-ndk-toolchain \ - --platform=android-22 -</code></pre> - -<h2 id="original-system-environment-configuration">Original System Environment Configuration</h2> - -<p>[TODO]-&gt; I will fix this part later.</p> - -<pre><code># Android NDK sources and standalone toolchain is put here -export DEV=~/Android/ - -# All the built binaries, libs and their header will be installed here -export PREFIX=/opt/android - -# Don't mix up .pc files from your host and build target -export PKG_CONFIG_PATH=${PREFIX}/lib/pkgconfig - -# GCC for Android version to use -# 4.9 is the only available version since NDK r11! -export GCC_VER=4.9 - -# The building system we are using (Linux x86_64) -export BUILD_SYS=x86_64-linux-gnu - -# Set Android target API level -export ANDROID_API=22 - -# Set Android target arch -export ANDROID_ARCH=arm - -# Set Android target name, according to Table 2 in -# https://developer.android.com/ndk/guides/standalone_toolchain.html -export ANDROID_TARGET=armv7-none-linux-androideabi - -# The cross-compile toolchain we use -export TOOLCHAIN=arm-linux-androideabi - -# This is a symlink pointing to the real Android NDK r12b -export NDK=${DEV}/android-ndk - -# The path of standalone NDK toolchain -# Refer to https://developer.android.com/ndk/guides/standalone_toolchain.html -export NDK_TOOLCHAIN=${DEV}/android-ndk-toolchain - -# this one is the absolute, prebuilt path -export SYSROOT=${NDK}/platforms/android-${ANDROID_API}/arch-${ANDROID_ARCH} - -# this one is the absolute, prebuilt path -export CROSS_PREFIX=${NDK}/toolchains/${TOOLCHAIN}-${GCC_VER}/prebuilt/linux-x86_64/bin/${TOOLCHAIN} - -# Non-exhaustive lists of compiler + binutils -export AR=${CROSS_PREFIX}-ar -export AS=${CROSS_PREFIX}-as -export LD=${CROSS_PREFIX}-ld -export NM=${CROSS_PREFIX}-nm -export CC=${CROSS_PREFIX}-gcc -export CXX=${CROSS_PREFIX}-g++ -export CPP=${CROSS_PREFIX}-cpp -export CXXCPP=${CROSS_PREFIX}-cpp -export STRIP=${CROSS_PREFIX}-strip -export RANLIB=${CROSS_PREFIX}-ranlib -export STRINGS=${CROSS_PREFIX}-strings - -# Set build flags -# Refer to https://developer.android.com/ndk/guides/standalone_toolchain.html -export PATH=$PATH:${PREFIX}/bin:${PREFIX}/lib -export CFLAGS=&quot;--sysroot=${SYSROOT} -I${SYSROOT}/usr/include -I${PREFIX}/include -fPIE -DANDROID -Wno-multichar&quot; -export CXXFLAGS=${CFLAGS} -export CPPFLAGS=&quot;--sysroot=${SYSROOT} -I${SYSROOT}/usr/include -I${NDK_TOOLCHAIN}/include/c++/ -DANDROID -DNO_XMALLOC -mandroid&quot; -export LIBS=&quot;-lc -lstdc++ -ld&quot; -export LDFLAGS=&quot;-Wl,-rpath-link=-I${SYSROOT}/usr/lib -L${SYSROOT}/usr/lib -L${PREFIX}/lib -L${NDK_TOOLCHAIN}/lib&quot; -</code></pre> - -<h1 id="compile-process">Compile Process</h1> - -<p>To compile seafile, we should compile ccnet and libsearpc first. As for these two projects, they all have their own dependencies, so we must follow some order to run the compilation.</p> - -<h2 id="libsearpc">libsearpc</h2> - -<h3 id="glib">glib</h3> - -<h4 id="libiconv">libiconv</h4> - -<h4 id="libffi">libffi</h4> - -<h4 id="gettext">gettext</h4> - -<h3 id="libjasson">libjasson</h3> - -<h2 id="ccnet">ccnet</h2> - -<h3 id="libuuid">libuuid</h3> - -<h2 id="seafile">seafile</h2> - -<h1 id="preferences">Preferences</h1> - -<ul> -<li><a href="http://zwyuan.github.io/2016/07/17/cross-compile-glib-for-android/">zwyuan</a></li> -</ul> - - - - - diff --git a/categories/cross-compile/page/1/index.html b/categories/cross-compile/page/1/index.html deleted file mode 100644 index edeac6b..0000000 --- a/categories/cross-compile/page/1/index.html +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/categories/experiment/index.html b/categories/experiment/index.html deleted file mode 100644 index 95aa4fa..0000000 --- a/categories/experiment/index.html +++ /dev/null @@ -1,188 +0,0 @@ - - - - - - - - - - - - - - - - - Experiment - Mil años de solitario - - - - - - - - - - - - -
- -
- -
-
- - -
- -
-
-
Experiment
- - -
-
-
Sat, Aug 20, 2016
- -
-
Partial content of this post won’t be showed public on this blog. I will generally talking about how I organized my experiment and how I did such a work. As for data and observation, I will create a google docs for it. However, I will also give precise conclusion of my experiments. Google Docs Used Command Solve Android Read_Only Issue mount -o rw,remount /system mount -o ro,remount /system Using tc
- - - - -
-
- - - - - -
-
- - - - -
-
- -
-
-
- - - - - - - - - - - - - - - diff --git a/categories/experiment/index.xml b/categories/experiment/index.xml deleted file mode 100644 index 9139cdd..0000000 --- a/categories/experiment/index.xml +++ /dev/null @@ -1,47 +0,0 @@ - - - - Experiment on Mil años de solitario - https://CoderSherlock.github.io/categories/experiment/ - Recent content in Experiment on Mil años de solitario - Hugo -- gohugo.io - en-us - Copyright (c) 2016 - 2016, Pengzhan Hao; all rights reserved. - Sat, 20 Aug 2016 01:44:59 -0400 - - - - Rsync Experiment Towards X86 VS ARM - https://codersherlock.github.io/post/Rsync_Experiment_Towards_X86_VS_ARM/ - Sat, 20 Aug 2016 01:44:59 -0400 - - https://codersherlock.github.io/post/Rsync_Experiment_Towards_X86_VS_ARM/ - - -<p>Partial content of this post won&rsquo;t be showed public on this blog. I will generally talking about how I organized my experiment and how I did such a work. As for data and observation, I will create a google docs for it. However, I will also give precise conclusion of my experiments.</p> - -<p><a href="https://docs.google.com/a/binghamton.edu/document/d/1sCjsC1pXcfgECp3do2oySsG9kW7UZ3BTEXvDlau1vIE/edit?usp=sharing">Google Docs</a></p> - -<h4 id="used-command">Used Command</h4> - -<h5 id="solve-android-read-only-issue">Solve Android Read_Only Issue</h5> - -<pre><code>mount -o rw,remount /system -mount -o ro,remount /system -</code></pre> - -<h5 id="using-tc-to-limit-bandwidth-on-host-server">Using tc to limit bandwidth on host server</h5> - -<pre><code># Apply speed limits -sudo tc qdisc add dev {DEV_NAME} handle 1: root htb default 11 -sudo tc class add dev {DEV_NAME} parent 1: classid 1:1 htb rate 1kbit -sudo tc class add dev {DEV_NAME} parent 1:1 classid 1:11 htb rate 1kbit - -# Delete limitation profile -sudo tc qdisc del dev {DEV_NAME} root -</code></pre> - - - - - diff --git a/categories/experiment/page/1/index.html b/categories/experiment/page/1/index.html deleted file mode 100644 index 68808c0..0000000 --- a/categories/experiment/page/1/index.html +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/categories/game/index.html b/categories/game/index.html deleted file mode 100644 index e8988d1..0000000 --- a/categories/game/index.html +++ /dev/null @@ -1,188 +0,0 @@ - - - - - - - - - - - - - - - - - Game - Mil años de solitario - - - - - - - - - - - - -
- -
- -
-
- - -
- -
-
-
Game
- - -
-
-
Sat, Jul 30, 2016
- -
-
Catch them all until bored Preface I never imagined that I will truly write something for hacking a game. Though I have to admit that Pokemon Go is a huge heat and different from other games, it still hard to believe that I took movement to make it better(or worse?). I was a big fun of ingress, and thanks to one of my best friends, Kevin, who was also a huge fan to ingress, recommended me this game.
- - - - -
-
- - - - - -
-
- - - - -
-
- -
-
-
- - - - - - - - - - - - - - - diff --git a/categories/game/index.xml b/categories/game/index.xml deleted file mode 100644 index 0ce55cd..0000000 --- a/categories/game/index.xml +++ /dev/null @@ -1,41 +0,0 @@ - - - - Game on Mil años de solitario - https://CoderSherlock.github.io/categories/game/ - Recent content in Game on Mil años de solitario - Hugo -- gohugo.io - en-us - Copyright (c) 2016 - 2016, Pengzhan Hao; all rights reserved. - Sat, 30 Jul 2016 18:10:20 -0400 - - - - Pokemon Go Hack - https://codersherlock.github.io/post/Pokemon-Go-Hack/ - Sat, 30 Jul 2016 18:10:20 -0400 - - https://codersherlock.github.io/post/Pokemon-Go-Hack/ - - -<h1 id="catch-them-all-until-bored">Catch them all until bored</h1> - -<h1 id="preface">Preface</h1> - -<p>I never imagined that I will truly write something for hacking a game. Though I have to admit that Pokemon Go is a huge heat and different from other games, it still hard to believe that I took movement to make it better(or worse?). I was a big fun of ingress, and thanks to one of my best friends, Kevin, who was also a huge fan to ingress, recommended me this game. Due to some well known reasons, Ingress didn&rsquo;t become popular at my country. But time flies, I break through the wall, and come to a free land which can play Niantic&rsquo;s game. Unfortunately, this time, the only thing restrict me from playing LBS game is limitation of my spare time. Working in the Lab makes me exhausted <strong>EVERYDAY</strong> and the place where I am now is so barren which even doesn&rsquo;t have much insects and birds(I mean Weedle and Pidgey). -<em>afk I have to battle a nearby gym now</em> -Anyway, after coming back, I think I write too much on useless words, so let me keep it straight forward. My imagination of this hacking project is very simple, which is making an auto bot helping me go through all experiences a Pokemon trainer will face. In first stage, my goal is making the bot smartly picking up a route to walk, catch all Pokemons and supply from PokeStops.</p> - -<h1 id="todo-list">TODO List</h1> - -<p>-[X] Test API --[ ] Finish Walk Algorithm --[ ] Finish other movement, etc. catch, hatch --[ ] Smart Walking route --[ ] Pokemon Predict (Thanks to Pokevision&rsquo;s idea) --[ ] Become a Pokemon Master</p> - - - - - diff --git a/categories/game/page/1/index.html b/categories/game/page/1/index.html deleted file mode 100644 index 592e82d..0000000 --- a/categories/game/page/1/index.html +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/categories/hack/index.html b/categories/hack/index.html deleted file mode 100644 index 9f01659..0000000 --- a/categories/hack/index.html +++ /dev/null @@ -1,188 +0,0 @@ - - - - - - - - - - - - - - - - - Hack - Mil años de solitario - - - - - - - - - - - - -
- -
- -
-
- - -
- -
-
-
Hack
- - -
-
-
Sat, Jul 30, 2016
- -
-
Catch them all until bored Preface I never imagined that I will truly write something for hacking a game. Though I have to admit that Pokemon Go is a huge heat and different from other games, it still hard to believe that I took movement to make it better(or worse?). I was a big fun of ingress, and thanks to one of my best friends, Kevin, who was also a huge fan to ingress, recommended me this game.
- - - - -
-
- - - - - -
-
- - - - -
-
- -
-
-
- - - - - - - - - - - - - - - diff --git a/categories/hack/index.xml b/categories/hack/index.xml deleted file mode 100644 index 2dfd025..0000000 --- a/categories/hack/index.xml +++ /dev/null @@ -1,41 +0,0 @@ - - - - Hack on Mil años de solitario - https://CoderSherlock.github.io/categories/hack/ - Recent content in Hack on Mil años de solitario - Hugo -- gohugo.io - en-us - Copyright (c) 2016 - 2016, Pengzhan Hao; all rights reserved. - Sat, 30 Jul 2016 18:10:20 -0400 - - - - Pokemon Go Hack - https://codersherlock.github.io/post/Pokemon-Go-Hack/ - Sat, 30 Jul 2016 18:10:20 -0400 - - https://codersherlock.github.io/post/Pokemon-Go-Hack/ - - -<h1 id="catch-them-all-until-bored">Catch them all until bored</h1> - -<h1 id="preface">Preface</h1> - -<p>I never imagined that I will truly write something for hacking a game. Though I have to admit that Pokemon Go is a huge heat and different from other games, it still hard to believe that I took movement to make it better(or worse?). I was a big fun of ingress, and thanks to one of my best friends, Kevin, who was also a huge fan to ingress, recommended me this game. Due to some well known reasons, Ingress didn&rsquo;t become popular at my country. But time flies, I break through the wall, and come to a free land which can play Niantic&rsquo;s game. Unfortunately, this time, the only thing restrict me from playing LBS game is limitation of my spare time. Working in the Lab makes me exhausted <strong>EVERYDAY</strong> and the place where I am now is so barren which even doesn&rsquo;t have much insects and birds(I mean Weedle and Pidgey). -<em>afk I have to battle a nearby gym now</em> -Anyway, after coming back, I think I write too much on useless words, so let me keep it straight forward. My imagination of this hacking project is very simple, which is making an auto bot helping me go through all experiences a Pokemon trainer will face. In first stage, my goal is making the bot smartly picking up a route to walk, catch all Pokemons and supply from PokeStops.</p> - -<h1 id="todo-list">TODO List</h1> - -<p>-[X] Test API --[ ] Finish Walk Algorithm --[ ] Finish other movement, etc. catch, hatch --[ ] Smart Walking route --[ ] Pokemon Predict (Thanks to Pokevision&rsquo;s idea) --[ ] Become a Pokemon Master</p> - - - - - diff --git a/categories/hack/page/1/index.html b/categories/hack/page/1/index.html deleted file mode 100644 index 50be232..0000000 --- a/categories/hack/page/1/index.html +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/categories/index.html b/categories/index.html deleted file mode 100644 index 32da696..0000000 --- a/categories/index.html +++ /dev/null @@ -1,179 +0,0 @@ - - - - - - - - - - - - - - - - - Categories - Mil años de solitario - - - - - - - - - - - - -
- -
- -
-
- - -
- -
-
- -
Categories
- - - cross-compile - - experiment - - game - - hack - - -
-
- - - - -
-
- -
-
-
- - - - - - - - - - - - - - - diff --git a/css/custom.css b/css/custom.css deleted file mode 100644 index 7198a1f..0000000 --- a/css/custom.css +++ /dev/null @@ -1 +0,0 @@ -/* Please override here. */ diff --git a/css/styles.css b/css/styles.css deleted file mode 100644 index a251caf..0000000 --- a/css/styles.css +++ /dev/null @@ -1,216 +0,0 @@ -html { - font-size: 16px; -} - -body { - font-family: 'Open Sans', "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, Osaka, "MS Pゴシック", "MS PGothic", sans-serif; - -webkit-font-smoothing: antialiased; - font-size: inherit; - color: #000; -} - -@media (max-width: 768px) { - html { - font-size: 14px; - } -} - -html, -body { - margin: 0; -} - -a { - transition-duration: .2s; -} - -a:hover, -a:focus, -a:active { - outline: none; - box-shadow: none; -} - -a.tag { - font-size: .8rem; - color: #999; -} - -a.tag:hover { - color: #333; -} - -code:not(.hljs) { - font-size: .8rem; -} - -img { - width: 100%; -} - -.share { - text-align: right; -} - -.share a { - display: inline-block; - color: #999; - padding: 0 .5rem; -} - -header.site nav.navbar { - border-radius: 0; - border-top: none; - border-right: none; - border-left: none; -} - -header.site .navbar-default .navbar-nav>li>a { - font-size: .8rem; -} - -header.page-title { - font-size: 1.6rem; - line-height: 2rem; - margin-bottom: 1rem; - text-decoration: underline; -} - -article.li .date { - font-size: .8rem; - line-height: 1rem; -} - -article.li .title { - font-size: 1.4rem; - line-height: 2rem; - margin-bottom: .5rem; -} - -article.li .body { - margin-bottom: 1rem; -} - -article.single .article-header { - margin: 1rem 0 2rem 0; -} - -article.single .article-header time { - font-size: .8rem; - line-height: 1rem; - display: block; -} - -article.single .article-title { - margin: 0; - font-size: 1.4rem; - line-height: 2rem; -} - -article.single .article-body { - max-width: 650px; - margin: 0 auto; - margin-bottom: 1rem; - padding: 0 1rem; -} - -@media (max-width: 768px) { - article.single .article-body { - padding: 0; - } -} - -article.single .article-body h1, -article.single .article-body h2, -article.single .article-body h3, -article.single .article-body h4, -article.single .article-body h5, -article.single .article-body h6 { - word-break: break-all; -} - -article.single h1 { font-size: 1.6rem; line-height: 2.4rem; } -article.single h2 { font-size: 1.4rem; line-height: 2.1rem; } -article.single h3 { font-size: 1.1rem; line-height: 1.7rem; } -article.single h4 { font-size: 1rem; line-height: 1.5rem; } -article.single h5 { font-size: 1rem; line-height: 1.5rem; } - -article.single .article-body h1:first-child, -article.single .article-body h2:first-child, -article.single .article-body h3:first-child, -article.single .article-body h4:first-child, -article.single .article-body h5:first-child, -article.single .article-body h6:first-child { - margin-top: 0; -} - -article.single .article-body h1 { - margin-top: 4rem; - margin-bottom: 1rem; - font-weight: 900; -} - -article.single .article-body h2 { - margin-top: 2rem; - margin-bottom: 1rem; -} - -article.single .article-body h3, -article.single .article-body h4, -article.single .article-body h5, -article.single .article-body h6 { - margin-top: 2rem; - margin-bottom: .5rem; -} - -article.single .article-body p { - line-height: 1.5rem; - margin-bottom: 1rem; - word-break: break-word; -} - -article.single .article-body blockquote { - padding: .5rem; - font-size: .8rem; - border-left: none; - background-color: #eee; -} - -article.single .article-body blockquote p { - line-height: 1rem; -} - -article.single .article-body blockquote p:last-child { - margin-bottom: 0; -} - -article.single .article-body pre { - padding: 0; - border: none; - border-radius: 0; -} - -article.single aside { - padding: 2rem; -} - -@media (max-width: 768px) { - article.single aside { - padding: 0; - } -} - -article.single aside .section { - margin-bottom: 2rem; -} - -footer.site { - padding: 3rem 0; -} - -footer.site p { - font-size: .8rem; - margin-bottom: .5rem; - color: #999; -} - diff --git a/draft/index.md b/draft/index.md new file mode 100644 index 0000000..9c17ec1 --- /dev/null +++ b/draft/index.md @@ -0,0 +1,5 @@ +# Coder Sherlock's Website + +* My blog [Mil años de solitario](./blog.html) +* My code repo [Don't try to be smart](./code.html) +* About me [Curriculum Vitae](./mycv.html) diff --git a/index.html b/index.html index 59b7e33..6a82bca 100644 --- a/index.html +++ b/index.html @@ -1,251 +1,23 @@ - - - - + + + - - - - - - - - - + + + +

Coder Sherlock's Website

+ + - diff --git a/index.xml b/index.xml deleted file mode 100644 index 9604fb8..0000000 --- a/index.xml +++ /dev/null @@ -1,274 +0,0 @@ - - - - Mil años de solitario - https://CoderSherlock.github.io/ - Recent content on Mil años de solitario - Hugo -- gohugo.io - en-us - Copyright (c) 2016 - 2016, Pengzhan Hao; all rights reserved. - Sat, 20 Aug 2016 01:44:59 -0400 - - - - Rsync Experiment Towards X86 VS ARM - https://codersherlock.github.io/post/Rsync_Experiment_Towards_X86_VS_ARM/ - Sat, 20 Aug 2016 01:44:59 -0400 - - https://codersherlock.github.io/post/Rsync_Experiment_Towards_X86_VS_ARM/ - - -<p>Partial content of this post won&rsquo;t be showed public on this blog. I will generally talking about how I organized my experiment and how I did such a work. As for data and observation, I will create a google docs for it. However, I will also give precise conclusion of my experiments.</p> - -<p><a href="https://docs.google.com/a/binghamton.edu/document/d/1sCjsC1pXcfgECp3do2oySsG9kW7UZ3BTEXvDlau1vIE/edit?usp=sharing">Google Docs</a></p> - -<h4 id="used-command">Used Command</h4> - -<h5 id="solve-android-read-only-issue">Solve Android Read_Only Issue</h5> - -<pre><code>mount -o rw,remount /system -mount -o ro,remount /system -</code></pre> - -<h5 id="using-tc-to-limit-bandwidth-on-host-server">Using tc to limit bandwidth on host server</h5> - -<pre><code># Apply speed limits -sudo tc qdisc add dev {DEV_NAME} handle 1: root htb default 11 -sudo tc class add dev {DEV_NAME} parent 1: classid 1:1 htb rate 1kbit -sudo tc class add dev {DEV_NAME} parent 1:1 classid 1:11 htb rate 1kbit - -# Delete limitation profile -sudo tc qdisc del dev {DEV_NAME} root -</code></pre> - - - - - Cross Compile RSync ARM - https://codersherlock.github.io/post/Cross-Compile-RSync-ARM/ - Mon, 15 Aug 2016 15:44:05 -0400 - - https://codersherlock.github.io/post/Cross-Compile-RSync-ARM/ - - -<p>As always, feel free to ask. // Sherlock</p> - -<h1 id="motivation">Motivation</h1> - -<p>I got some issues about compile seafile to android, so instead of doing so, I start to figure out some other synchronize workflow. <a href="https://rsync.samba.org/">Rsync</a> is one of the most mature synchronization solution. So I made the decision on planting rsync to android.</p> - -<h1 id="pre-work">Pre-work</h1> - -<p>Rsync is a sync program with delta sync feature and based on SSH connection. So all we need to do is SSH support and cross compile tool-chain. Similar to what I mentioned in <a href="https://codersherlock.github.io/post/Cross-Compile-Seafile-2-ARM/">previews blog</a>, Android NDK and environment export need to be done before compilation. -To enable normally use of compiled program, we need to make android support SSH. My solution is just install <a href="https://play.google.com/store/apps/details?id=berserker.android.apps.sshdroid&amp;hl=en">SSHDroid</a> from Google Play Store.</p> - -<h1 id="cross-compile-rsync">Cross-Compile Rsync</h1> - -<p>Running following script to build rsync. It will generate a executable file named rsync in the root directory.</p> - -<pre><code>$ ./configure --build=${BUILD_SYS} --host=${TOOLCHAIN} -$ make -</code></pre> - -<h1 id="push-rsync-to-android">Push RSync to Android.</h1> - -<p>After installing SSHDroid, we can now push our arm-version-rsync to target machine.</p> - -<pre><code>$ adb push rsync /data/local/tmp -$ adb shell - -$ cd /data/data/berserker.android.apps.sshdroid/dropbear -$ mv ../../../local/tmp/rsync . -</code></pre> - -<h1 id="run-rsync-with-argument">Run Rsync with argument</h1> - -<p>Now we can easily use rsync in android shell. Similar to what we use on PC.</p> - -<pre><code>$ ./rsync -e &quot;./ssh&quot; {target-data} {target-location}:{target-directory} -</code></pre> - -<h1 id="references">References</h1> - -<p><a href="http://stackoverflow.com/questions/8130889/build-rsync-for-android">Build Rsync for Android</a></p> - - - - - Pokemon Go Hack - https://codersherlock.github.io/post/Pokemon-Go-Hack/ - Sat, 30 Jul 2016 18:10:20 -0400 - - https://codersherlock.github.io/post/Pokemon-Go-Hack/ - - -<h1 id="catch-them-all-until-bored">Catch them all until bored</h1> - -<h1 id="preface">Preface</h1> - -<p>I never imagined that I will truly write something for hacking a game. Though I have to admit that Pokemon Go is a huge heat and different from other games, it still hard to believe that I took movement to make it better(or worse?). I was a big fun of ingress, and thanks to one of my best friends, Kevin, who was also a huge fan to ingress, recommended me this game. Due to some well known reasons, Ingress didn&rsquo;t become popular at my country. But time flies, I break through the wall, and come to a free land which can play Niantic&rsquo;s game. Unfortunately, this time, the only thing restrict me from playing LBS game is limitation of my spare time. Working in the Lab makes me exhausted <strong>EVERYDAY</strong> and the place where I am now is so barren which even doesn&rsquo;t have much insects and birds(I mean Weedle and Pidgey). -<em>afk I have to battle a nearby gym now</em> -Anyway, after coming back, I think I write too much on useless words, so let me keep it straight forward. My imagination of this hacking project is very simple, which is making an auto bot helping me go through all experiences a Pokemon trainer will face. In first stage, my goal is making the bot smartly picking up a route to walk, catch all Pokemons and supply from PokeStops.</p> - -<h1 id="todo-list">TODO List</h1> - -<p>-[X] Test API --[ ] Finish Walk Algorithm --[ ] Finish other movement, etc. catch, hatch --[ ] Smart Walking route --[ ] Pokemon Predict (Thanks to Pokevision&rsquo;s idea) --[ ] Become a Pokemon Master</p> - - - - - Cross Compile Seafile to ARM - https://codersherlock.github.io/post/Cross-Compile-Seafile-2-ARM/ - Sat, 30 Jul 2016 14:02:34 -0400 - - https://codersherlock.github.io/post/Cross-Compile-Seafile-2-ARM/ - - -<h1 id="motivation">Motivation</h1> - -<p>This project is working for delta sync from mobile to server. Currently, there&rsquo;s no mobile program/solution has supporting to delta sync(Include Dropbox/ Goggle Drive). But the truth is that almost every pc version sync program can work as delta sync properly or not. So in this article, I&rsquo;ll provide a workbench for cross compilation and evaluation. And finally come up with a reason of how to port better incremental synchronize solution on mobile platform.</p> - -<h1 id="pre-work">Pre-work</h1> - -<p>Basically, I used the native android compilation tool-chains, <a href="https://developer.android.com/ndk/downloads/index.html">Android NDK</a>, as working tools. Due to my working situation, I use a <a href="https://shield.nvidia.com/tablet/k1">Nvidia Shield Tablet</a> as target device. As <em>Zengwen</em> said in his <a href="http://zwyuan.github.io/2016/07/17/cross-compile-glib-for-android/">blog</a>, newest updated NDK might has some issue which can influence compilation progress. So you can find <a href="http://stackoverflow.com/questions/6849981/where-do-i-find-old-versions-of-android-ndk">other version</a> of NDK once you have some problems. Based on what <em>Zengwen&rsquo;s</em> blog mentioned, we can write following useful system environment and export in terminal.</p> - -<h2 id="prerequisites">Prerequisites</h2> - -<pre><code>$ sudo apt-get install build-essential -$ sudo apt-get install pkg-config automake autoconf libtool -</code></pre> - -<h2 id="link-with-standalone-tool-chains">Link with standalone tool-chains</h2> - -<p>In order to build standalone tool-chains, we need first to export following system environment. After doing that, we can use following command to build a standalone tool-chains from downloaded NDK.</p> - -<pre><code>$ ${NDK}/build/tools/make-standalone-toolchain.sh \ - --toolchain=arm-linux-androideabi-4.9 \ - --stl=gnustl \ - --arch=arm \ - --ndk-dir=/home/moslab/Android/android-ndk-r12b \ - --package-dir=/home/moslab/Android \ - --install-dir=/home/moslab/Android/android-ndk-toolchain \ - --platform=android-22 -</code></pre> - -<h2 id="original-system-environment-configuration">Original System Environment Configuration</h2> - -<p>[TODO]-&gt; I will fix this part later.</p> - -<pre><code># Android NDK sources and standalone toolchain is put here -export DEV=~/Android/ - -# All the built binaries, libs and their header will be installed here -export PREFIX=/opt/android - -# Don't mix up .pc files from your host and build target -export PKG_CONFIG_PATH=${PREFIX}/lib/pkgconfig - -# GCC for Android version to use -# 4.9 is the only available version since NDK r11! -export GCC_VER=4.9 - -# The building system we are using (Linux x86_64) -export BUILD_SYS=x86_64-linux-gnu - -# Set Android target API level -export ANDROID_API=22 - -# Set Android target arch -export ANDROID_ARCH=arm - -# Set Android target name, according to Table 2 in -# https://developer.android.com/ndk/guides/standalone_toolchain.html -export ANDROID_TARGET=armv7-none-linux-androideabi - -# The cross-compile toolchain we use -export TOOLCHAIN=arm-linux-androideabi - -# This is a symlink pointing to the real Android NDK r12b -export NDK=${DEV}/android-ndk - -# The path of standalone NDK toolchain -# Refer to https://developer.android.com/ndk/guides/standalone_toolchain.html -export NDK_TOOLCHAIN=${DEV}/android-ndk-toolchain - -# this one is the absolute, prebuilt path -export SYSROOT=${NDK}/platforms/android-${ANDROID_API}/arch-${ANDROID_ARCH} - -# this one is the absolute, prebuilt path -export CROSS_PREFIX=${NDK}/toolchains/${TOOLCHAIN}-${GCC_VER}/prebuilt/linux-x86_64/bin/${TOOLCHAIN} - -# Non-exhaustive lists of compiler + binutils -export AR=${CROSS_PREFIX}-ar -export AS=${CROSS_PREFIX}-as -export LD=${CROSS_PREFIX}-ld -export NM=${CROSS_PREFIX}-nm -export CC=${CROSS_PREFIX}-gcc -export CXX=${CROSS_PREFIX}-g++ -export CPP=${CROSS_PREFIX}-cpp -export CXXCPP=${CROSS_PREFIX}-cpp -export STRIP=${CROSS_PREFIX}-strip -export RANLIB=${CROSS_PREFIX}-ranlib -export STRINGS=${CROSS_PREFIX}-strings - -# Set build flags -# Refer to https://developer.android.com/ndk/guides/standalone_toolchain.html -export PATH=$PATH:${PREFIX}/bin:${PREFIX}/lib -export CFLAGS=&quot;--sysroot=${SYSROOT} -I${SYSROOT}/usr/include -I${PREFIX}/include -fPIE -DANDROID -Wno-multichar&quot; -export CXXFLAGS=${CFLAGS} -export CPPFLAGS=&quot;--sysroot=${SYSROOT} -I${SYSROOT}/usr/include -I${NDK_TOOLCHAIN}/include/c++/ -DANDROID -DNO_XMALLOC -mandroid&quot; -export LIBS=&quot;-lc -lstdc++ -ld&quot; -export LDFLAGS=&quot;-Wl,-rpath-link=-I${SYSROOT}/usr/lib -L${SYSROOT}/usr/lib -L${PREFIX}/lib -L${NDK_TOOLCHAIN}/lib&quot; -</code></pre> - -<h1 id="compile-process">Compile Process</h1> - -<p>To compile seafile, we should compile ccnet and libsearpc first. As for these two projects, they all have their own dependencies, so we must follow some order to run the compilation.</p> - -<h2 id="libsearpc">libsearpc</h2> - -<h3 id="glib">glib</h3> - -<h4 id="libiconv">libiconv</h4> - -<h4 id="libffi">libffi</h4> - -<h4 id="gettext">gettext</h4> - -<h3 id="libjasson">libjasson</h3> - -<h2 id="ccnet">ccnet</h2> - -<h3 id="libuuid">libuuid</h3> - -<h2 id="seafile">seafile</h2> - -<h1 id="preferences">Preferences</h1> - -<ul> -<li><a href="http://zwyuan.github.io/2016/07/17/cross-compile-glib-for-android/">zwyuan</a></li> -</ul> - - - - - about me - https://codersherlock.github.io/about/ - Thu, 26 Aug 1993 08:10:55 -0400 - - https://codersherlock.github.io/about/ - <p>2012 - Coder Sherlock -2013 - Sherlock Hao -2015 - Jon Hao</p> - -<p><a href="mailto:haopengzhan@gmail.com">Email me</a></p> - - - - - diff --git a/page/1/index.html b/page/1/index.html deleted file mode 100644 index a0e0697..0000000 --- a/page/1/index.html +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/post/Cross-Compile-RSync-ARM/index.html b/post/Cross-Compile-RSync-ARM/index.html deleted file mode 100644 index 791159f..0000000 --- a/post/Cross-Compile-RSync-ARM/index.html +++ /dev/null @@ -1,276 +0,0 @@ - - - - - - - - - - - - - - - - - Cross Compile RSync ARM - Mil años de solitario - - - - - - - - - - - - -
- -
- -
-
- - - -
- -
-
- -
- - - - - - -
- - - -
-
-
- - - -
- -
- - -
- -

Cross Compile RSync ARM

-
- -
- - -

As always, feel free to ask. // Sherlock

- -

Motivation

- -

I got some issues about compile seafile to android, so instead of doing so, I start to figure out some other synchronize workflow. Rsync is one of the most mature synchronization solution. So I made the decision on planting rsync to android.

- -

Pre-work

- -

Rsync is a sync program with delta sync feature and based on SSH connection. So all we need to do is SSH support and cross compile tool-chain. Similar to what I mentioned in previews blog, Android NDK and environment export need to be done before compilation. -To enable normally use of compiled program, we need to make android support SSH. My solution is just install SSHDroid from Google Play Store.

- -

Cross-Compile Rsync

- -

Running following script to build rsync. It will generate a executable file named rsync in the root directory.

- -
$ ./configure --build=${BUILD_SYS} --host=${TOOLCHAIN}
-$ make
-
- -

Push RSync to Android.

- -

After installing SSHDroid, we can now push our arm-version-rsync to target machine.

- -
$ adb push rsync /data/local/tmp
-$ adb shell
-
-$ cd /data/data/berserker.android.apps.sshdroid/dropbear
-$ mv ../../../local/tmp/rsync . 
-
- -

Run Rsync with argument

- -

Now we can easily use rsync in android shell. Similar to what we use on PC.

- -
$ ./rsync -e "./ssh" {target-data} {target-location}:{target-directory}  
-
- -

References

- -

Build Rsync for Android

- -
- - - - -
- -
-
- - - - -
-
- -
- -
-
- - - - - - - - - - - - - - - diff --git a/post/Cross-Compile-Seafile-2-ARM/index.html b/post/Cross-Compile-Seafile-2-ARM/index.html deleted file mode 100644 index 93ad2dd..0000000 --- a/post/Cross-Compile-Seafile-2-ARM/index.html +++ /dev/null @@ -1,360 +0,0 @@ - - - - - - - - - - - - - - - - - Cross Compile Seafile to ARM - Mil años de solitario - - - - - - - - - - - - -
- -
- -
-
- - - -
- -
-
- -
- - - - - - -
- - - -
-
-
- - - -
- -
- - -
- -

Cross Compile Seafile to ARM

-
- -
- - -

Motivation

- -

This project is working for delta sync from mobile to server. Currently, there’s no mobile program/solution has supporting to delta sync(Include Dropbox/ Goggle Drive). But the truth is that almost every pc version sync program can work as delta sync properly or not. So in this article, I’ll provide a workbench for cross compilation and evaluation. And finally come up with a reason of how to port better incremental synchronize solution on mobile platform.

- -

Pre-work

- -

Basically, I used the native android compilation tool-chains, Android NDK, as working tools. Due to my working situation, I use a Nvidia Shield Tablet as target device. As Zengwen said in his blog, newest updated NDK might has some issue which can influence compilation progress. So you can find other version of NDK once you have some problems. Based on what Zengwen’s blog mentioned, we can write following useful system environment and export in terminal.

- -

Prerequisites

- -
$ sudo apt-get install build-essential
-$ sudo apt-get install pkg-config automake autoconf libtool
-
- - - -

In order to build standalone tool-chains, we need first to export following system environment. After doing that, we can use following command to build a standalone tool-chains from downloaded NDK.

- -
$ ${NDK}/build/tools/make-standalone-toolchain.sh \
-    --toolchain=arm-linux-androideabi-4.9 \
-    --stl=gnustl \
-    --arch=arm \
-    --ndk-dir=/home/moslab/Android/android-ndk-r12b \
-    --package-dir=/home/moslab/Android \
-    --install-dir=/home/moslab/Android/android-ndk-toolchain \
-    --platform=android-22
-
- -

Original System Environment Configuration

- -

[TODO]-> I will fix this part later.

- -
# Android NDK sources and standalone toolchain is put here
-export DEV=~/Android/
-
-# All the built binaries, libs and their header will be installed here
-export PREFIX=/opt/android
-
-# Don't mix up .pc files from your host and build target
-export PKG_CONFIG_PATH=${PREFIX}/lib/pkgconfig
-
-# GCC for Android version to use
-# 4.9 is the only available version since NDK r11!
-export GCC_VER=4.9
-
-# The building system we are using (Linux x86_64)
-export BUILD_SYS=x86_64-linux-gnu
-
-# Set Android target API level
-export ANDROID_API=22
-
-# Set Android target arch
-export ANDROID_ARCH=arm
-
-# Set Android target name, according to Table 2 in
-# https://developer.android.com/ndk/guides/standalone_toolchain.html
-export ANDROID_TARGET=armv7-none-linux-androideabi
-
-# The cross-compile toolchain we use
-export TOOLCHAIN=arm-linux-androideabi
-
-# This is a symlink pointing to the real Android NDK r12b
-export NDK=${DEV}/android-ndk
-
-# The path of standalone NDK toolchain
-# Refer to https://developer.android.com/ndk/guides/standalone_toolchain.html
-export NDK_TOOLCHAIN=${DEV}/android-ndk-toolchain
-
-# this one is the absolute, prebuilt path
-export SYSROOT=${NDK}/platforms/android-${ANDROID_API}/arch-${ANDROID_ARCH}
-
-# this one is the absolute, prebuilt path
-export CROSS_PREFIX=${NDK}/toolchains/${TOOLCHAIN}-${GCC_VER}/prebuilt/linux-x86_64/bin/${TOOLCHAIN}
-
-# Non-exhaustive lists of compiler + binutils
-export AR=${CROSS_PREFIX}-ar
-export AS=${CROSS_PREFIX}-as
-export LD=${CROSS_PREFIX}-ld
-export NM=${CROSS_PREFIX}-nm
-export CC=${CROSS_PREFIX}-gcc
-export CXX=${CROSS_PREFIX}-g++
-export CPP=${CROSS_PREFIX}-cpp
-export CXXCPP=${CROSS_PREFIX}-cpp
-export STRIP=${CROSS_PREFIX}-strip
-export RANLIB=${CROSS_PREFIX}-ranlib
-export STRINGS=${CROSS_PREFIX}-strings
-
-# Set build flags
-# Refer to https://developer.android.com/ndk/guides/standalone_toolchain.html
-export PATH=$PATH:${PREFIX}/bin:${PREFIX}/lib
-export CFLAGS="--sysroot=${SYSROOT} -I${SYSROOT}/usr/include -I${PREFIX}/include -fPIE -DANDROID -Wno-multichar"
-export CXXFLAGS=${CFLAGS}
-export CPPFLAGS="--sysroot=${SYSROOT} -I${SYSROOT}/usr/include -I${NDK_TOOLCHAIN}/include/c++/ -DANDROID -DNO_XMALLOC -mandroid"
-export LIBS="-lc -lstdc++ -ld"
-export LDFLAGS="-Wl,-rpath-link=-I${SYSROOT}/usr/lib -L${SYSROOT}/usr/lib -L${PREFIX}/lib -L${NDK_TOOLCHAIN}/lib"
-
- -

Compile Process

- -

To compile seafile, we should compile ccnet and libsearpc first. As for these two projects, they all have their own dependencies, so we must follow some order to run the compilation.

- -

libsearpc

- -

glib

- -

libiconv

- -

libffi

- -

gettext

- -

libjasson

- -

ccnet

- -

libuuid

- -

seafile

- -

Preferences

- - - -
- - - - -
- -
-
- - - - -
-
- -
- -
-
- - - - - - - - - - - - - - - diff --git a/post/Pokemon-Go-Hack/index.html b/post/Pokemon-Go-Hack/index.html deleted file mode 100644 index 5c861d5..0000000 --- a/post/Pokemon-Go-Hack/index.html +++ /dev/null @@ -1,252 +0,0 @@ - - - - - - - - - - - - - - - - - Pokemon Go Hack - Mil años de solitario - - - - - - - - - - - - -
- -
- -
-
- - - -
- -
-
- -
- - - - - - -
- - - -
-
-
- - - -
- -
- - -
- -

Pokemon Go Hack

-
- -
- - -

Catch them all until bored

- -

Preface

- -

I never imagined that I will truly write something for hacking a game. Though I have to admit that Pokemon Go is a huge heat and different from other games, it still hard to believe that I took movement to make it better(or worse?). I was a big fun of ingress, and thanks to one of my best friends, Kevin, who was also a huge fan to ingress, recommended me this game. Due to some well known reasons, Ingress didn’t become popular at my country. But time flies, I break through the wall, and come to a free land which can play Niantic’s game. Unfortunately, this time, the only thing restrict me from playing LBS game is limitation of my spare time. Working in the Lab makes me exhausted EVERYDAY and the place where I am now is so barren which even doesn’t have much insects and birds(I mean Weedle and Pidgey). -afk I have to battle a nearby gym now -Anyway, after coming back, I think I write too much on useless words, so let me keep it straight forward. My imagination of this hacking project is very simple, which is making an auto bot helping me go through all experiences a Pokemon trainer will face. In first stage, my goal is making the bot smartly picking up a route to walk, catch all Pokemons and supply from PokeStops.

- -

TODO List

- -

-[X] Test API --[ ] Finish Walk Algorithm --[ ] Finish other movement, etc. catch, hatch --[ ] Smart Walking route --[ ] Pokemon Predict (Thanks to Pokevision’s idea) --[ ] Become a Pokemon Master

- -
- - - - -
- -
-
- - - - -
-
- -
- -
-
- - - - - - - - - - - - - - - diff --git a/post/Rsync_Experiment_Towards_X86_VS_ARM/index.html b/post/Rsync_Experiment_Towards_X86_VS_ARM/index.html deleted file mode 100644 index 5c5f6e2..0000000 --- a/post/Rsync_Experiment_Towards_X86_VS_ARM/index.html +++ /dev/null @@ -1,258 +0,0 @@ - - - - - - - - - - - - - - - - - Rsync Experiment Towards X86 VS ARM - Mil años de solitario - - - - - - - - - - - - -
- -
- -
-
- - - -
- -
-
- -
- - - - - - -
- - - -
-
-
- - - -
- -
- - -
- -

Rsync Experiment Towards X86 VS ARM

-
- -
- - -

Partial content of this post won’t be showed public on this blog. I will generally talking about how I organized my experiment and how I did such a work. As for data and observation, I will create a google docs for it. However, I will also give precise conclusion of my experiments.

- -

Google Docs

- -

Used Command

- -
Solve Android Read_Only Issue
- -
mount -o rw,remount /system
-mount -o ro,remount /system
-
- -
Using tc to limit bandwidth on host server
- -
# Apply speed limits
-sudo tc qdisc add dev {DEV_NAME} handle 1: root htb default 11
-sudo tc class add dev {DEV_NAME} parent 1: classid 1:1 htb rate 1kbit
-sudo tc class add dev {DEV_NAME} parent 1:1 classid 1:11 htb rate 1kbit
-
-# Delete limitation profile
-sudo tc qdisc del dev {DEV_NAME} root
-
- -
- - - - -
- -
-
- - - - -
-
- -
- -
-
- - - - - - - - - - - - - - - diff --git a/post/index.html b/post/index.html deleted file mode 100644 index d3b1792..0000000 --- a/post/index.html +++ /dev/null @@ -1,236 +0,0 @@ - - - - - - - - - - - - - - - - - Posts - Mil años de solitario - - - - - - - - - - - - -
- -
- -
-
- - -
- -
-
-
Posts
- - -
-
-
Sat, Aug 20, 2016
- -
-
Partial content of this post won’t be showed public on this blog. I will generally talking about how I organized my experiment and how I did such a work. As for data and observation, I will create a google docs for it. However, I will also give precise conclusion of my experiments. Google Docs Used Command Solve Android Read_Only Issue mount -o rw,remount /system mount -o ro,remount /system Using tc
- - - - -
-
- - -
-
-
Mon, Aug 15, 2016
- -
-
As always, feel free to ask. // Sherlock Motivation I got some issues about compile seafile to android, so instead of doing so, I start to figure out some other synchronize workflow. Rsync is one of the most mature synchronization solution. So I made the decision on planting rsync to android. Pre-work Rsync is a sync program with delta sync feature and based on SSH connection. So all we need to do is SSH support and cross compile tool-chain.
- - - - -
-
- - -
-
-
Sat, Jul 30, 2016
- -
-
Catch them all until bored Preface I never imagined that I will truly write something for hacking a game. Though I have to admit that Pokemon Go is a huge heat and different from other games, it still hard to believe that I took movement to make it better(or worse?). I was a big fun of ingress, and thanks to one of my best friends, Kevin, who was also a huge fan to ingress, recommended me this game.
- - - - -
-
- - -
-
-
Sat, Jul 30, 2016
- -
-
Motivation This project is working for delta sync from mobile to server. Currently, there’s no mobile program/solution has supporting to delta sync(Include Dropbox/ Goggle Drive). But the truth is that almost every pc version sync program can work as delta sync properly or not. So in this article, I’ll provide a workbench for cross compilation and evaluation. And finally come up with a reason of how to port better incremental synchronize solution on mobile platform.
- - - - -
-
- - - - - -
-
- - - - -
-
- -
-
-
- - - - - - - - - - - - - - - diff --git a/post/index.xml b/post/index.xml deleted file mode 100644 index 85898c2..0000000 --- a/post/index.xml +++ /dev/null @@ -1,260 +0,0 @@ - - - - Posts on Mil años de solitario - https://CoderSherlock.github.io/post/ - Recent content in Posts on Mil años de solitario - Hugo -- gohugo.io - en-us - Copyright (c) 2016 - 2016, Pengzhan Hao; all rights reserved. - Sat, 20 Aug 2016 01:44:59 -0400 - - - - Rsync Experiment Towards X86 VS ARM - https://codersherlock.github.io/post/Rsync_Experiment_Towards_X86_VS_ARM/ - Sat, 20 Aug 2016 01:44:59 -0400 - - https://codersherlock.github.io/post/Rsync_Experiment_Towards_X86_VS_ARM/ - - -<p>Partial content of this post won&rsquo;t be showed public on this blog. I will generally talking about how I organized my experiment and how I did such a work. As for data and observation, I will create a google docs for it. However, I will also give precise conclusion of my experiments.</p> - -<p><a href="https://docs.google.com/a/binghamton.edu/document/d/1sCjsC1pXcfgECp3do2oySsG9kW7UZ3BTEXvDlau1vIE/edit?usp=sharing">Google Docs</a></p> - -<h4 id="used-command">Used Command</h4> - -<h5 id="solve-android-read-only-issue">Solve Android Read_Only Issue</h5> - -<pre><code>mount -o rw,remount /system -mount -o ro,remount /system -</code></pre> - -<h5 id="using-tc-to-limit-bandwidth-on-host-server">Using tc to limit bandwidth on host server</h5> - -<pre><code># Apply speed limits -sudo tc qdisc add dev {DEV_NAME} handle 1: root htb default 11 -sudo tc class add dev {DEV_NAME} parent 1: classid 1:1 htb rate 1kbit -sudo tc class add dev {DEV_NAME} parent 1:1 classid 1:11 htb rate 1kbit - -# Delete limitation profile -sudo tc qdisc del dev {DEV_NAME} root -</code></pre> - - - - - Cross Compile RSync ARM - https://codersherlock.github.io/post/Cross-Compile-RSync-ARM/ - Mon, 15 Aug 2016 15:44:05 -0400 - - https://codersherlock.github.io/post/Cross-Compile-RSync-ARM/ - - -<p>As always, feel free to ask. // Sherlock</p> - -<h1 id="motivation">Motivation</h1> - -<p>I got some issues about compile seafile to android, so instead of doing so, I start to figure out some other synchronize workflow. <a href="https://rsync.samba.org/">Rsync</a> is one of the most mature synchronization solution. So I made the decision on planting rsync to android.</p> - -<h1 id="pre-work">Pre-work</h1> - -<p>Rsync is a sync program with delta sync feature and based on SSH connection. So all we need to do is SSH support and cross compile tool-chain. Similar to what I mentioned in <a href="https://codersherlock.github.io/post/Cross-Compile-Seafile-2-ARM/">previews blog</a>, Android NDK and environment export need to be done before compilation. -To enable normally use of compiled program, we need to make android support SSH. My solution is just install <a href="https://play.google.com/store/apps/details?id=berserker.android.apps.sshdroid&amp;hl=en">SSHDroid</a> from Google Play Store.</p> - -<h1 id="cross-compile-rsync">Cross-Compile Rsync</h1> - -<p>Running following script to build rsync. It will generate a executable file named rsync in the root directory.</p> - -<pre><code>$ ./configure --build=${BUILD_SYS} --host=${TOOLCHAIN} -$ make -</code></pre> - -<h1 id="push-rsync-to-android">Push RSync to Android.</h1> - -<p>After installing SSHDroid, we can now push our arm-version-rsync to target machine.</p> - -<pre><code>$ adb push rsync /data/local/tmp -$ adb shell - -$ cd /data/data/berserker.android.apps.sshdroid/dropbear -$ mv ../../../local/tmp/rsync . -</code></pre> - -<h1 id="run-rsync-with-argument">Run Rsync with argument</h1> - -<p>Now we can easily use rsync in android shell. Similar to what we use on PC.</p> - -<pre><code>$ ./rsync -e &quot;./ssh&quot; {target-data} {target-location}:{target-directory} -</code></pre> - -<h1 id="references">References</h1> - -<p><a href="http://stackoverflow.com/questions/8130889/build-rsync-for-android">Build Rsync for Android</a></p> - - - - - Pokemon Go Hack - https://codersherlock.github.io/post/Pokemon-Go-Hack/ - Sat, 30 Jul 2016 18:10:20 -0400 - - https://codersherlock.github.io/post/Pokemon-Go-Hack/ - - -<h1 id="catch-them-all-until-bored">Catch them all until bored</h1> - -<h1 id="preface">Preface</h1> - -<p>I never imagined that I will truly write something for hacking a game. Though I have to admit that Pokemon Go is a huge heat and different from other games, it still hard to believe that I took movement to make it better(or worse?). I was a big fun of ingress, and thanks to one of my best friends, Kevin, who was also a huge fan to ingress, recommended me this game. Due to some well known reasons, Ingress didn&rsquo;t become popular at my country. But time flies, I break through the wall, and come to a free land which can play Niantic&rsquo;s game. Unfortunately, this time, the only thing restrict me from playing LBS game is limitation of my spare time. Working in the Lab makes me exhausted <strong>EVERYDAY</strong> and the place where I am now is so barren which even doesn&rsquo;t have much insects and birds(I mean Weedle and Pidgey). -<em>afk I have to battle a nearby gym now</em> -Anyway, after coming back, I think I write too much on useless words, so let me keep it straight forward. My imagination of this hacking project is very simple, which is making an auto bot helping me go through all experiences a Pokemon trainer will face. In first stage, my goal is making the bot smartly picking up a route to walk, catch all Pokemons and supply from PokeStops.</p> - -<h1 id="todo-list">TODO List</h1> - -<p>-[X] Test API --[ ] Finish Walk Algorithm --[ ] Finish other movement, etc. catch, hatch --[ ] Smart Walking route --[ ] Pokemon Predict (Thanks to Pokevision&rsquo;s idea) --[ ] Become a Pokemon Master</p> - - - - - Cross Compile Seafile to ARM - https://codersherlock.github.io/post/Cross-Compile-Seafile-2-ARM/ - Sat, 30 Jul 2016 14:02:34 -0400 - - https://codersherlock.github.io/post/Cross-Compile-Seafile-2-ARM/ - - -<h1 id="motivation">Motivation</h1> - -<p>This project is working for delta sync from mobile to server. Currently, there&rsquo;s no mobile program/solution has supporting to delta sync(Include Dropbox/ Goggle Drive). But the truth is that almost every pc version sync program can work as delta sync properly or not. So in this article, I&rsquo;ll provide a workbench for cross compilation and evaluation. And finally come up with a reason of how to port better incremental synchronize solution on mobile platform.</p> - -<h1 id="pre-work">Pre-work</h1> - -<p>Basically, I used the native android compilation tool-chains, <a href="https://developer.android.com/ndk/downloads/index.html">Android NDK</a>, as working tools. Due to my working situation, I use a <a href="https://shield.nvidia.com/tablet/k1">Nvidia Shield Tablet</a> as target device. As <em>Zengwen</em> said in his <a href="http://zwyuan.github.io/2016/07/17/cross-compile-glib-for-android/">blog</a>, newest updated NDK might has some issue which can influence compilation progress. So you can find <a href="http://stackoverflow.com/questions/6849981/where-do-i-find-old-versions-of-android-ndk">other version</a> of NDK once you have some problems. Based on what <em>Zengwen&rsquo;s</em> blog mentioned, we can write following useful system environment and export in terminal.</p> - -<h2 id="prerequisites">Prerequisites</h2> - -<pre><code>$ sudo apt-get install build-essential -$ sudo apt-get install pkg-config automake autoconf libtool -</code></pre> - -<h2 id="link-with-standalone-tool-chains">Link with standalone tool-chains</h2> - -<p>In order to build standalone tool-chains, we need first to export following system environment. After doing that, we can use following command to build a standalone tool-chains from downloaded NDK.</p> - -<pre><code>$ ${NDK}/build/tools/make-standalone-toolchain.sh \ - --toolchain=arm-linux-androideabi-4.9 \ - --stl=gnustl \ - --arch=arm \ - --ndk-dir=/home/moslab/Android/android-ndk-r12b \ - --package-dir=/home/moslab/Android \ - --install-dir=/home/moslab/Android/android-ndk-toolchain \ - --platform=android-22 -</code></pre> - -<h2 id="original-system-environment-configuration">Original System Environment Configuration</h2> - -<p>[TODO]-&gt; I will fix this part later.</p> - -<pre><code># Android NDK sources and standalone toolchain is put here -export DEV=~/Android/ - -# All the built binaries, libs and their header will be installed here -export PREFIX=/opt/android - -# Don't mix up .pc files from your host and build target -export PKG_CONFIG_PATH=${PREFIX}/lib/pkgconfig - -# GCC for Android version to use -# 4.9 is the only available version since NDK r11! -export GCC_VER=4.9 - -# The building system we are using (Linux x86_64) -export BUILD_SYS=x86_64-linux-gnu - -# Set Android target API level -export ANDROID_API=22 - -# Set Android target arch -export ANDROID_ARCH=arm - -# Set Android target name, according to Table 2 in -# https://developer.android.com/ndk/guides/standalone_toolchain.html -export ANDROID_TARGET=armv7-none-linux-androideabi - -# The cross-compile toolchain we use -export TOOLCHAIN=arm-linux-androideabi - -# This is a symlink pointing to the real Android NDK r12b -export NDK=${DEV}/android-ndk - -# The path of standalone NDK toolchain -# Refer to https://developer.android.com/ndk/guides/standalone_toolchain.html -export NDK_TOOLCHAIN=${DEV}/android-ndk-toolchain - -# this one is the absolute, prebuilt path -export SYSROOT=${NDK}/platforms/android-${ANDROID_API}/arch-${ANDROID_ARCH} - -# this one is the absolute, prebuilt path -export CROSS_PREFIX=${NDK}/toolchains/${TOOLCHAIN}-${GCC_VER}/prebuilt/linux-x86_64/bin/${TOOLCHAIN} - -# Non-exhaustive lists of compiler + binutils -export AR=${CROSS_PREFIX}-ar -export AS=${CROSS_PREFIX}-as -export LD=${CROSS_PREFIX}-ld -export NM=${CROSS_PREFIX}-nm -export CC=${CROSS_PREFIX}-gcc -export CXX=${CROSS_PREFIX}-g++ -export CPP=${CROSS_PREFIX}-cpp -export CXXCPP=${CROSS_PREFIX}-cpp -export STRIP=${CROSS_PREFIX}-strip -export RANLIB=${CROSS_PREFIX}-ranlib -export STRINGS=${CROSS_PREFIX}-strings - -# Set build flags -# Refer to https://developer.android.com/ndk/guides/standalone_toolchain.html -export PATH=$PATH:${PREFIX}/bin:${PREFIX}/lib -export CFLAGS=&quot;--sysroot=${SYSROOT} -I${SYSROOT}/usr/include -I${PREFIX}/include -fPIE -DANDROID -Wno-multichar&quot; -export CXXFLAGS=${CFLAGS} -export CPPFLAGS=&quot;--sysroot=${SYSROOT} -I${SYSROOT}/usr/include -I${NDK_TOOLCHAIN}/include/c++/ -DANDROID -DNO_XMALLOC -mandroid&quot; -export LIBS=&quot;-lc -lstdc++ -ld&quot; -export LDFLAGS=&quot;-Wl,-rpath-link=-I${SYSROOT}/usr/lib -L${SYSROOT}/usr/lib -L${PREFIX}/lib -L${NDK_TOOLCHAIN}/lib&quot; -</code></pre> - -<h1 id="compile-process">Compile Process</h1> - -<p>To compile seafile, we should compile ccnet and libsearpc first. As for these two projects, they all have their own dependencies, so we must follow some order to run the compilation.</p> - -<h2 id="libsearpc">libsearpc</h2> - -<h3 id="glib">glib</h3> - -<h4 id="libiconv">libiconv</h4> - -<h4 id="libffi">libffi</h4> - -<h4 id="gettext">gettext</h4> - -<h3 id="libjasson">libjasson</h3> - -<h2 id="ccnet">ccnet</h2> - -<h3 id="libuuid">libuuid</h3> - -<h2 id="seafile">seafile</h2> - -<h1 id="preferences">Preferences</h1> - -<ul> -<li><a href="http://zwyuan.github.io/2016/07/17/cross-compile-glib-for-android/">zwyuan</a></li> -</ul> - - - - - diff --git a/post/page/1/index.html b/post/page/1/index.html deleted file mode 100644 index e6f2b8c..0000000 --- a/post/page/1/index.html +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/sitemap.xml b/sitemap.xml deleted file mode 100644 index afcb628..0000000 --- a/sitemap.xml +++ /dev/null @@ -1,34 +0,0 @@ - - - - - https://codersherlock.github.io/ - 2016-08-20T01:44:59-04:00 - - - - https://codersherlock.github.io/post/Rsync_Experiment_Towards_X86_VS_ARM/ - 2016-08-20T01:44:59-04:00 - - - - https://codersherlock.github.io/post/Cross-Compile-RSync-ARM/ - 2016-08-15T15:44:05-04:00 - - - - https://codersherlock.github.io/post/Pokemon-Go-Hack/ - 2016-07-30T18:10:20-04:00 - - - - https://codersherlock.github.io/post/Cross-Compile-Seafile-2-ARM/ - 2016-07-30T14:02:34-04:00 - - - - https://codersherlock.github.io/about/ - 1993-08-26T08:10:55-04:00 - - - \ No newline at end of file diff --git a/tags/android/index.html b/tags/android/index.html deleted file mode 100644 index f74ac5d..0000000 --- a/tags/android/index.html +++ /dev/null @@ -1,220 +0,0 @@ - - - - - - - - - - - - - - - - - Android - Mil años de solitario - - - - - - - - - - - - -
- -
- -
-
- - -
- -
-
-
Android
- - -
-
-
Sat, Aug 20, 2016
- -
-
Partial content of this post won’t be showed public on this blog. I will generally talking about how I organized my experiment and how I did such a work. As for data and observation, I will create a google docs for it. However, I will also give precise conclusion of my experiments. Google Docs Used Command Solve Android Read_Only Issue mount -o rw,remount /system mount -o ro,remount /system Using tc
- - - - -
-
- - -
-
-
Mon, Aug 15, 2016
- -
-
As always, feel free to ask. // Sherlock Motivation I got some issues about compile seafile to android, so instead of doing so, I start to figure out some other synchronize workflow. Rsync is one of the most mature synchronization solution. So I made the decision on planting rsync to android. Pre-work Rsync is a sync program with delta sync feature and based on SSH connection. So all we need to do is SSH support and cross compile tool-chain.
- - - - -
-
- - -
-
-
Sat, Jul 30, 2016
- -
-
Motivation This project is working for delta sync from mobile to server. Currently, there’s no mobile program/solution has supporting to delta sync(Include Dropbox/ Goggle Drive). But the truth is that almost every pc version sync program can work as delta sync properly or not. So in this article, I’ll provide a workbench for cross compilation and evaluation. And finally come up with a reason of how to port better incremental synchronize solution on mobile platform.
- - - - -
-
- - - - - -
-
- - - - -
-
- -
-
-
- - - - - - - - - - - - - - - diff --git a/tags/android/index.xml b/tags/android/index.xml deleted file mode 100644 index a2634d4..0000000 --- a/tags/android/index.xml +++ /dev/null @@ -1,233 +0,0 @@ - - - - Android on Mil años de solitario - https://CoderSherlock.github.io/tags/android/ - Recent content in Android on Mil años de solitario - Hugo -- gohugo.io - en-us - Copyright (c) 2016 - 2016, Pengzhan Hao; all rights reserved. - Sat, 20 Aug 2016 01:44:59 -0400 - - - - Rsync Experiment Towards X86 VS ARM - https://codersherlock.github.io/post/Rsync_Experiment_Towards_X86_VS_ARM/ - Sat, 20 Aug 2016 01:44:59 -0400 - - https://codersherlock.github.io/post/Rsync_Experiment_Towards_X86_VS_ARM/ - - -<p>Partial content of this post won&rsquo;t be showed public on this blog. I will generally talking about how I organized my experiment and how I did such a work. As for data and observation, I will create a google docs for it. However, I will also give precise conclusion of my experiments.</p> - -<p><a href="https://docs.google.com/a/binghamton.edu/document/d/1sCjsC1pXcfgECp3do2oySsG9kW7UZ3BTEXvDlau1vIE/edit?usp=sharing">Google Docs</a></p> - -<h4 id="used-command">Used Command</h4> - -<h5 id="solve-android-read-only-issue">Solve Android Read_Only Issue</h5> - -<pre><code>mount -o rw,remount /system -mount -o ro,remount /system -</code></pre> - -<h5 id="using-tc-to-limit-bandwidth-on-host-server">Using tc to limit bandwidth on host server</h5> - -<pre><code># Apply speed limits -sudo tc qdisc add dev {DEV_NAME} handle 1: root htb default 11 -sudo tc class add dev {DEV_NAME} parent 1: classid 1:1 htb rate 1kbit -sudo tc class add dev {DEV_NAME} parent 1:1 classid 1:11 htb rate 1kbit - -# Delete limitation profile -sudo tc qdisc del dev {DEV_NAME} root -</code></pre> - - - - - Cross Compile RSync ARM - https://codersherlock.github.io/post/Cross-Compile-RSync-ARM/ - Mon, 15 Aug 2016 15:44:05 -0400 - - https://codersherlock.github.io/post/Cross-Compile-RSync-ARM/ - - -<p>As always, feel free to ask. // Sherlock</p> - -<h1 id="motivation">Motivation</h1> - -<p>I got some issues about compile seafile to android, so instead of doing so, I start to figure out some other synchronize workflow. <a href="https://rsync.samba.org/">Rsync</a> is one of the most mature synchronization solution. So I made the decision on planting rsync to android.</p> - -<h1 id="pre-work">Pre-work</h1> - -<p>Rsync is a sync program with delta sync feature and based on SSH connection. So all we need to do is SSH support and cross compile tool-chain. Similar to what I mentioned in <a href="https://codersherlock.github.io/post/Cross-Compile-Seafile-2-ARM/">previews blog</a>, Android NDK and environment export need to be done before compilation. -To enable normally use of compiled program, we need to make android support SSH. My solution is just install <a href="https://play.google.com/store/apps/details?id=berserker.android.apps.sshdroid&amp;hl=en">SSHDroid</a> from Google Play Store.</p> - -<h1 id="cross-compile-rsync">Cross-Compile Rsync</h1> - -<p>Running following script to build rsync. It will generate a executable file named rsync in the root directory.</p> - -<pre><code>$ ./configure --build=${BUILD_SYS} --host=${TOOLCHAIN} -$ make -</code></pre> - -<h1 id="push-rsync-to-android">Push RSync to Android.</h1> - -<p>After installing SSHDroid, we can now push our arm-version-rsync to target machine.</p> - -<pre><code>$ adb push rsync /data/local/tmp -$ adb shell - -$ cd /data/data/berserker.android.apps.sshdroid/dropbear -$ mv ../../../local/tmp/rsync . -</code></pre> - -<h1 id="run-rsync-with-argument">Run Rsync with argument</h1> - -<p>Now we can easily use rsync in android shell. Similar to what we use on PC.</p> - -<pre><code>$ ./rsync -e &quot;./ssh&quot; {target-data} {target-location}:{target-directory} -</code></pre> - -<h1 id="references">References</h1> - -<p><a href="http://stackoverflow.com/questions/8130889/build-rsync-for-android">Build Rsync for Android</a></p> - - - - - Cross Compile Seafile to ARM - https://codersherlock.github.io/post/Cross-Compile-Seafile-2-ARM/ - Sat, 30 Jul 2016 14:02:34 -0400 - - https://codersherlock.github.io/post/Cross-Compile-Seafile-2-ARM/ - - -<h1 id="motivation">Motivation</h1> - -<p>This project is working for delta sync from mobile to server. Currently, there&rsquo;s no mobile program/solution has supporting to delta sync(Include Dropbox/ Goggle Drive). But the truth is that almost every pc version sync program can work as delta sync properly or not. So in this article, I&rsquo;ll provide a workbench for cross compilation and evaluation. And finally come up with a reason of how to port better incremental synchronize solution on mobile platform.</p> - -<h1 id="pre-work">Pre-work</h1> - -<p>Basically, I used the native android compilation tool-chains, <a href="https://developer.android.com/ndk/downloads/index.html">Android NDK</a>, as working tools. Due to my working situation, I use a <a href="https://shield.nvidia.com/tablet/k1">Nvidia Shield Tablet</a> as target device. As <em>Zengwen</em> said in his <a href="http://zwyuan.github.io/2016/07/17/cross-compile-glib-for-android/">blog</a>, newest updated NDK might has some issue which can influence compilation progress. So you can find <a href="http://stackoverflow.com/questions/6849981/where-do-i-find-old-versions-of-android-ndk">other version</a> of NDK once you have some problems. Based on what <em>Zengwen&rsquo;s</em> blog mentioned, we can write following useful system environment and export in terminal.</p> - -<h2 id="prerequisites">Prerequisites</h2> - -<pre><code>$ sudo apt-get install build-essential -$ sudo apt-get install pkg-config automake autoconf libtool -</code></pre> - -<h2 id="link-with-standalone-tool-chains">Link with standalone tool-chains</h2> - -<p>In order to build standalone tool-chains, we need first to export following system environment. After doing that, we can use following command to build a standalone tool-chains from downloaded NDK.</p> - -<pre><code>$ ${NDK}/build/tools/make-standalone-toolchain.sh \ - --toolchain=arm-linux-androideabi-4.9 \ - --stl=gnustl \ - --arch=arm \ - --ndk-dir=/home/moslab/Android/android-ndk-r12b \ - --package-dir=/home/moslab/Android \ - --install-dir=/home/moslab/Android/android-ndk-toolchain \ - --platform=android-22 -</code></pre> - -<h2 id="original-system-environment-configuration">Original System Environment Configuration</h2> - -<p>[TODO]-&gt; I will fix this part later.</p> - -<pre><code># Android NDK sources and standalone toolchain is put here -export DEV=~/Android/ - -# All the built binaries, libs and their header will be installed here -export PREFIX=/opt/android - -# Don't mix up .pc files from your host and build target -export PKG_CONFIG_PATH=${PREFIX}/lib/pkgconfig - -# GCC for Android version to use -# 4.9 is the only available version since NDK r11! -export GCC_VER=4.9 - -# The building system we are using (Linux x86_64) -export BUILD_SYS=x86_64-linux-gnu - -# Set Android target API level -export ANDROID_API=22 - -# Set Android target arch -export ANDROID_ARCH=arm - -# Set Android target name, according to Table 2 in -# https://developer.android.com/ndk/guides/standalone_toolchain.html -export ANDROID_TARGET=armv7-none-linux-androideabi - -# The cross-compile toolchain we use -export TOOLCHAIN=arm-linux-androideabi - -# This is a symlink pointing to the real Android NDK r12b -export NDK=${DEV}/android-ndk - -# The path of standalone NDK toolchain -# Refer to https://developer.android.com/ndk/guides/standalone_toolchain.html -export NDK_TOOLCHAIN=${DEV}/android-ndk-toolchain - -# this one is the absolute, prebuilt path -export SYSROOT=${NDK}/platforms/android-${ANDROID_API}/arch-${ANDROID_ARCH} - -# this one is the absolute, prebuilt path -export CROSS_PREFIX=${NDK}/toolchains/${TOOLCHAIN}-${GCC_VER}/prebuilt/linux-x86_64/bin/${TOOLCHAIN} - -# Non-exhaustive lists of compiler + binutils -export AR=${CROSS_PREFIX}-ar -export AS=${CROSS_PREFIX}-as -export LD=${CROSS_PREFIX}-ld -export NM=${CROSS_PREFIX}-nm -export CC=${CROSS_PREFIX}-gcc -export CXX=${CROSS_PREFIX}-g++ -export CPP=${CROSS_PREFIX}-cpp -export CXXCPP=${CROSS_PREFIX}-cpp -export STRIP=${CROSS_PREFIX}-strip -export RANLIB=${CROSS_PREFIX}-ranlib -export STRINGS=${CROSS_PREFIX}-strings - -# Set build flags -# Refer to https://developer.android.com/ndk/guides/standalone_toolchain.html -export PATH=$PATH:${PREFIX}/bin:${PREFIX}/lib -export CFLAGS=&quot;--sysroot=${SYSROOT} -I${SYSROOT}/usr/include -I${PREFIX}/include -fPIE -DANDROID -Wno-multichar&quot; -export CXXFLAGS=${CFLAGS} -export CPPFLAGS=&quot;--sysroot=${SYSROOT} -I${SYSROOT}/usr/include -I${NDK_TOOLCHAIN}/include/c++/ -DANDROID -DNO_XMALLOC -mandroid&quot; -export LIBS=&quot;-lc -lstdc++ -ld&quot; -export LDFLAGS=&quot;-Wl,-rpath-link=-I${SYSROOT}/usr/lib -L${SYSROOT}/usr/lib -L${PREFIX}/lib -L${NDK_TOOLCHAIN}/lib&quot; -</code></pre> - -<h1 id="compile-process">Compile Process</h1> - -<p>To compile seafile, we should compile ccnet and libsearpc first. As for these two projects, they all have their own dependencies, so we must follow some order to run the compilation.</p> - -<h2 id="libsearpc">libsearpc</h2> - -<h3 id="glib">glib</h3> - -<h4 id="libiconv">libiconv</h4> - -<h4 id="libffi">libffi</h4> - -<h4 id="gettext">gettext</h4> - -<h3 id="libjasson">libjasson</h3> - -<h2 id="ccnet">ccnet</h2> - -<h3 id="libuuid">libuuid</h3> - -<h2 id="seafile">seafile</h2> - -<h1 id="preferences">Preferences</h1> - -<ul> -<li><a href="http://zwyuan.github.io/2016/07/17/cross-compile-glib-for-android/">zwyuan</a></li> -</ul> - - - - - diff --git a/tags/android/page/1/index.html b/tags/android/page/1/index.html deleted file mode 100644 index 6d4097e..0000000 --- a/tags/android/page/1/index.html +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/tags/arm/index.html b/tags/arm/index.html deleted file mode 100644 index 8274280..0000000 --- a/tags/arm/index.html +++ /dev/null @@ -1,204 +0,0 @@ - - - - - - - - - - - - - - - - - Arm - Mil años de solitario - - - - - - - - - - - - -
- -
- -
-
- - -
- -
-
-
Arm
- - -
-
-
Mon, Aug 15, 2016
- -
-
As always, feel free to ask. // Sherlock Motivation I got some issues about compile seafile to android, so instead of doing so, I start to figure out some other synchronize workflow. Rsync is one of the most mature synchronization solution. So I made the decision on planting rsync to android. Pre-work Rsync is a sync program with delta sync feature and based on SSH connection. So all we need to do is SSH support and cross compile tool-chain.
- - - - -
-
- - -
-
-
Sat, Jul 30, 2016
- -
-
Motivation This project is working for delta sync from mobile to server. Currently, there’s no mobile program/solution has supporting to delta sync(Include Dropbox/ Goggle Drive). But the truth is that almost every pc version sync program can work as delta sync properly or not. So in this article, I’ll provide a workbench for cross compilation and evaluation. And finally come up with a reason of how to port better incremental synchronize solution on mobile platform.
- - - - -
-
- - - - - -
-
- - - - -
-
- -
-
-
- - - - - - - - - - - - - - - diff --git a/tags/arm/index.xml b/tags/arm/index.xml deleted file mode 100644 index 6e018d9..0000000 --- a/tags/arm/index.xml +++ /dev/null @@ -1,200 +0,0 @@ - - - - Arm on Mil años de solitario - https://CoderSherlock.github.io/tags/arm/ - Recent content in Arm on Mil años de solitario - Hugo -- gohugo.io - en-us - Copyright (c) 2016 - 2016, Pengzhan Hao; all rights reserved. - Mon, 15 Aug 2016 15:44:05 -0400 - - - - Cross Compile RSync ARM - https://codersherlock.github.io/post/Cross-Compile-RSync-ARM/ - Mon, 15 Aug 2016 15:44:05 -0400 - - https://codersherlock.github.io/post/Cross-Compile-RSync-ARM/ - - -<p>As always, feel free to ask. // Sherlock</p> - -<h1 id="motivation">Motivation</h1> - -<p>I got some issues about compile seafile to android, so instead of doing so, I start to figure out some other synchronize workflow. <a href="https://rsync.samba.org/">Rsync</a> is one of the most mature synchronization solution. So I made the decision on planting rsync to android.</p> - -<h1 id="pre-work">Pre-work</h1> - -<p>Rsync is a sync program with delta sync feature and based on SSH connection. So all we need to do is SSH support and cross compile tool-chain. Similar to what I mentioned in <a href="https://codersherlock.github.io/post/Cross-Compile-Seafile-2-ARM/">previews blog</a>, Android NDK and environment export need to be done before compilation. -To enable normally use of compiled program, we need to make android support SSH. My solution is just install <a href="https://play.google.com/store/apps/details?id=berserker.android.apps.sshdroid&amp;hl=en">SSHDroid</a> from Google Play Store.</p> - -<h1 id="cross-compile-rsync">Cross-Compile Rsync</h1> - -<p>Running following script to build rsync. It will generate a executable file named rsync in the root directory.</p> - -<pre><code>$ ./configure --build=${BUILD_SYS} --host=${TOOLCHAIN} -$ make -</code></pre> - -<h1 id="push-rsync-to-android">Push RSync to Android.</h1> - -<p>After installing SSHDroid, we can now push our arm-version-rsync to target machine.</p> - -<pre><code>$ adb push rsync /data/local/tmp -$ adb shell - -$ cd /data/data/berserker.android.apps.sshdroid/dropbear -$ mv ../../../local/tmp/rsync . -</code></pre> - -<h1 id="run-rsync-with-argument">Run Rsync with argument</h1> - -<p>Now we can easily use rsync in android shell. Similar to what we use on PC.</p> - -<pre><code>$ ./rsync -e &quot;./ssh&quot; {target-data} {target-location}:{target-directory} -</code></pre> - -<h1 id="references">References</h1> - -<p><a href="http://stackoverflow.com/questions/8130889/build-rsync-for-android">Build Rsync for Android</a></p> - - - - - Cross Compile Seafile to ARM - https://codersherlock.github.io/post/Cross-Compile-Seafile-2-ARM/ - Sat, 30 Jul 2016 14:02:34 -0400 - - https://codersherlock.github.io/post/Cross-Compile-Seafile-2-ARM/ - - -<h1 id="motivation">Motivation</h1> - -<p>This project is working for delta sync from mobile to server. Currently, there&rsquo;s no mobile program/solution has supporting to delta sync(Include Dropbox/ Goggle Drive). But the truth is that almost every pc version sync program can work as delta sync properly or not. So in this article, I&rsquo;ll provide a workbench for cross compilation and evaluation. And finally come up with a reason of how to port better incremental synchronize solution on mobile platform.</p> - -<h1 id="pre-work">Pre-work</h1> - -<p>Basically, I used the native android compilation tool-chains, <a href="https://developer.android.com/ndk/downloads/index.html">Android NDK</a>, as working tools. Due to my working situation, I use a <a href="https://shield.nvidia.com/tablet/k1">Nvidia Shield Tablet</a> as target device. As <em>Zengwen</em> said in his <a href="http://zwyuan.github.io/2016/07/17/cross-compile-glib-for-android/">blog</a>, newest updated NDK might has some issue which can influence compilation progress. So you can find <a href="http://stackoverflow.com/questions/6849981/where-do-i-find-old-versions-of-android-ndk">other version</a> of NDK once you have some problems. Based on what <em>Zengwen&rsquo;s</em> blog mentioned, we can write following useful system environment and export in terminal.</p> - -<h2 id="prerequisites">Prerequisites</h2> - -<pre><code>$ sudo apt-get install build-essential -$ sudo apt-get install pkg-config automake autoconf libtool -</code></pre> - -<h2 id="link-with-standalone-tool-chains">Link with standalone tool-chains</h2> - -<p>In order to build standalone tool-chains, we need first to export following system environment. After doing that, we can use following command to build a standalone tool-chains from downloaded NDK.</p> - -<pre><code>$ ${NDK}/build/tools/make-standalone-toolchain.sh \ - --toolchain=arm-linux-androideabi-4.9 \ - --stl=gnustl \ - --arch=arm \ - --ndk-dir=/home/moslab/Android/android-ndk-r12b \ - --package-dir=/home/moslab/Android \ - --install-dir=/home/moslab/Android/android-ndk-toolchain \ - --platform=android-22 -</code></pre> - -<h2 id="original-system-environment-configuration">Original System Environment Configuration</h2> - -<p>[TODO]-&gt; I will fix this part later.</p> - -<pre><code># Android NDK sources and standalone toolchain is put here -export DEV=~/Android/ - -# All the built binaries, libs and their header will be installed here -export PREFIX=/opt/android - -# Don't mix up .pc files from your host and build target -export PKG_CONFIG_PATH=${PREFIX}/lib/pkgconfig - -# GCC for Android version to use -# 4.9 is the only available version since NDK r11! -export GCC_VER=4.9 - -# The building system we are using (Linux x86_64) -export BUILD_SYS=x86_64-linux-gnu - -# Set Android target API level -export ANDROID_API=22 - -# Set Android target arch -export ANDROID_ARCH=arm - -# Set Android target name, according to Table 2 in -# https://developer.android.com/ndk/guides/standalone_toolchain.html -export ANDROID_TARGET=armv7-none-linux-androideabi - -# The cross-compile toolchain we use -export TOOLCHAIN=arm-linux-androideabi - -# This is a symlink pointing to the real Android NDK r12b -export NDK=${DEV}/android-ndk - -# The path of standalone NDK toolchain -# Refer to https://developer.android.com/ndk/guides/standalone_toolchain.html -export NDK_TOOLCHAIN=${DEV}/android-ndk-toolchain - -# this one is the absolute, prebuilt path -export SYSROOT=${NDK}/platforms/android-${ANDROID_API}/arch-${ANDROID_ARCH} - -# this one is the absolute, prebuilt path -export CROSS_PREFIX=${NDK}/toolchains/${TOOLCHAIN}-${GCC_VER}/prebuilt/linux-x86_64/bin/${TOOLCHAIN} - -# Non-exhaustive lists of compiler + binutils -export AR=${CROSS_PREFIX}-ar -export AS=${CROSS_PREFIX}-as -export LD=${CROSS_PREFIX}-ld -export NM=${CROSS_PREFIX}-nm -export CC=${CROSS_PREFIX}-gcc -export CXX=${CROSS_PREFIX}-g++ -export CPP=${CROSS_PREFIX}-cpp -export CXXCPP=${CROSS_PREFIX}-cpp -export STRIP=${CROSS_PREFIX}-strip -export RANLIB=${CROSS_PREFIX}-ranlib -export STRINGS=${CROSS_PREFIX}-strings - -# Set build flags -# Refer to https://developer.android.com/ndk/guides/standalone_toolchain.html -export PATH=$PATH:${PREFIX}/bin:${PREFIX}/lib -export CFLAGS=&quot;--sysroot=${SYSROOT} -I${SYSROOT}/usr/include -I${PREFIX}/include -fPIE -DANDROID -Wno-multichar&quot; -export CXXFLAGS=${CFLAGS} -export CPPFLAGS=&quot;--sysroot=${SYSROOT} -I${SYSROOT}/usr/include -I${NDK_TOOLCHAIN}/include/c++/ -DANDROID -DNO_XMALLOC -mandroid&quot; -export LIBS=&quot;-lc -lstdc++ -ld&quot; -export LDFLAGS=&quot;-Wl,-rpath-link=-I${SYSROOT}/usr/lib -L${SYSROOT}/usr/lib -L${PREFIX}/lib -L${NDK_TOOLCHAIN}/lib&quot; -</code></pre> - -<h1 id="compile-process">Compile Process</h1> - -<p>To compile seafile, we should compile ccnet and libsearpc first. As for these two projects, they all have their own dependencies, so we must follow some order to run the compilation.</p> - -<h2 id="libsearpc">libsearpc</h2> - -<h3 id="glib">glib</h3> - -<h4 id="libiconv">libiconv</h4> - -<h4 id="libffi">libffi</h4> - -<h4 id="gettext">gettext</h4> - -<h3 id="libjasson">libjasson</h3> - -<h2 id="ccnet">ccnet</h2> - -<h3 id="libuuid">libuuid</h3> - -<h2 id="seafile">seafile</h2> - -<h1 id="preferences">Preferences</h1> - -<ul> -<li><a href="http://zwyuan.github.io/2016/07/17/cross-compile-glib-for-android/">zwyuan</a></li> -</ul> - - - - - diff --git a/tags/arm/page/1/index.html b/tags/arm/page/1/index.html deleted file mode 100644 index ccaec3d..0000000 --- a/tags/arm/page/1/index.html +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/tags/game/index.html b/tags/game/index.html deleted file mode 100644 index 9099a27..0000000 --- a/tags/game/index.html +++ /dev/null @@ -1,188 +0,0 @@ - - - - - - - - - - - - - - - - - Game - Mil años de solitario - - - - - - - - - - - - -
- -
- -
-
- - -
- -
-
-
Game
- - -
-
-
Sat, Jul 30, 2016
- -
-
Catch them all until bored Preface I never imagined that I will truly write something for hacking a game. Though I have to admit that Pokemon Go is a huge heat and different from other games, it still hard to believe that I took movement to make it better(or worse?). I was a big fun of ingress, and thanks to one of my best friends, Kevin, who was also a huge fan to ingress, recommended me this game.
- - - - -
-
- - - - - -
-
- - - - -
-
- -
-
-
- - - - - - - - - - - - - - - diff --git a/tags/game/index.xml b/tags/game/index.xml deleted file mode 100644 index 4c09a25..0000000 --- a/tags/game/index.xml +++ /dev/null @@ -1,41 +0,0 @@ - - - - Game on Mil años de solitario - https://CoderSherlock.github.io/tags/game/ - Recent content in Game on Mil años de solitario - Hugo -- gohugo.io - en-us - Copyright (c) 2016 - 2016, Pengzhan Hao; all rights reserved. - Sat, 30 Jul 2016 18:10:20 -0400 - - - - Pokemon Go Hack - https://codersherlock.github.io/post/Pokemon-Go-Hack/ - Sat, 30 Jul 2016 18:10:20 -0400 - - https://codersherlock.github.io/post/Pokemon-Go-Hack/ - - -<h1 id="catch-them-all-until-bored">Catch them all until bored</h1> - -<h1 id="preface">Preface</h1> - -<p>I never imagined that I will truly write something for hacking a game. Though I have to admit that Pokemon Go is a huge heat and different from other games, it still hard to believe that I took movement to make it better(or worse?). I was a big fun of ingress, and thanks to one of my best friends, Kevin, who was also a huge fan to ingress, recommended me this game. Due to some well known reasons, Ingress didn&rsquo;t become popular at my country. But time flies, I break through the wall, and come to a free land which can play Niantic&rsquo;s game. Unfortunately, this time, the only thing restrict me from playing LBS game is limitation of my spare time. Working in the Lab makes me exhausted <strong>EVERYDAY</strong> and the place where I am now is so barren which even doesn&rsquo;t have much insects and birds(I mean Weedle and Pidgey). -<em>afk I have to battle a nearby gym now</em> -Anyway, after coming back, I think I write too much on useless words, so let me keep it straight forward. My imagination of this hacking project is very simple, which is making an auto bot helping me go through all experiences a Pokemon trainer will face. In first stage, my goal is making the bot smartly picking up a route to walk, catch all Pokemons and supply from PokeStops.</p> - -<h1 id="todo-list">TODO List</h1> - -<p>-[X] Test API --[ ] Finish Walk Algorithm --[ ] Finish other movement, etc. catch, hatch --[ ] Smart Walking route --[ ] Pokemon Predict (Thanks to Pokevision&rsquo;s idea) --[ ] Become a Pokemon Master</p> - - - - - diff --git a/tags/game/page/1/index.html b/tags/game/page/1/index.html deleted file mode 100644 index d11c831..0000000 --- a/tags/game/page/1/index.html +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/tags/github/index.html b/tags/github/index.html deleted file mode 100644 index 3b71344..0000000 --- a/tags/github/index.html +++ /dev/null @@ -1,188 +0,0 @@ - - - - - - - - - - - - - - - - - Github - Mil años de solitario - - - - - - - - - - - - -
- -
- -
-
- - -
- -
-
-
Github
- - -
-
-
Sat, Jul 30, 2016
- -
-
Catch them all until bored Preface I never imagined that I will truly write something for hacking a game. Though I have to admit that Pokemon Go is a huge heat and different from other games, it still hard to believe that I took movement to make it better(or worse?). I was a big fun of ingress, and thanks to one of my best friends, Kevin, who was also a huge fan to ingress, recommended me this game.
- - - - -
-
- - - - - -
-
- - - - -
-
- -
-
-
- - - - - - - - - - - - - - - diff --git a/tags/github/index.xml b/tags/github/index.xml deleted file mode 100644 index e11dc54..0000000 --- a/tags/github/index.xml +++ /dev/null @@ -1,41 +0,0 @@ - - - - Github on Mil años de solitario - https://CoderSherlock.github.io/tags/github/ - Recent content in Github on Mil años de solitario - Hugo -- gohugo.io - en-us - Copyright (c) 2016 - 2016, Pengzhan Hao; all rights reserved. - Sat, 30 Jul 2016 18:10:20 -0400 - - - - Pokemon Go Hack - https://codersherlock.github.io/post/Pokemon-Go-Hack/ - Sat, 30 Jul 2016 18:10:20 -0400 - - https://codersherlock.github.io/post/Pokemon-Go-Hack/ - - -<h1 id="catch-them-all-until-bored">Catch them all until bored</h1> - -<h1 id="preface">Preface</h1> - -<p>I never imagined that I will truly write something for hacking a game. Though I have to admit that Pokemon Go is a huge heat and different from other games, it still hard to believe that I took movement to make it better(or worse?). I was a big fun of ingress, and thanks to one of my best friends, Kevin, who was also a huge fan to ingress, recommended me this game. Due to some well known reasons, Ingress didn&rsquo;t become popular at my country. But time flies, I break through the wall, and come to a free land which can play Niantic&rsquo;s game. Unfortunately, this time, the only thing restrict me from playing LBS game is limitation of my spare time. Working in the Lab makes me exhausted <strong>EVERYDAY</strong> and the place where I am now is so barren which even doesn&rsquo;t have much insects and birds(I mean Weedle and Pidgey). -<em>afk I have to battle a nearby gym now</em> -Anyway, after coming back, I think I write too much on useless words, so let me keep it straight forward. My imagination of this hacking project is very simple, which is making an auto bot helping me go through all experiences a Pokemon trainer will face. In first stage, my goal is making the bot smartly picking up a route to walk, catch all Pokemons and supply from PokeStops.</p> - -<h1 id="todo-list">TODO List</h1> - -<p>-[X] Test API --[ ] Finish Walk Algorithm --[ ] Finish other movement, etc. catch, hatch --[ ] Smart Walking route --[ ] Pokemon Predict (Thanks to Pokevision&rsquo;s idea) --[ ] Become a Pokemon Master</p> - - - - - diff --git a/tags/github/page/1/index.html b/tags/github/page/1/index.html deleted file mode 100644 index aaf507f..0000000 --- a/tags/github/page/1/index.html +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/tags/hack/index.html b/tags/hack/index.html deleted file mode 100644 index 2a65dd6..0000000 --- a/tags/hack/index.html +++ /dev/null @@ -1,188 +0,0 @@ - - - - - - - - - - - - - - - - - Hack - Mil años de solitario - - - - - - - - - - - - -
- -
- -
-
- - -
- -
-
-
Hack
- - -
-
-
Sat, Jul 30, 2016
- -
-
Catch them all until bored Preface I never imagined that I will truly write something for hacking a game. Though I have to admit that Pokemon Go is a huge heat and different from other games, it still hard to believe that I took movement to make it better(or worse?). I was a big fun of ingress, and thanks to one of my best friends, Kevin, who was also a huge fan to ingress, recommended me this game.
- - - - -
-
- - - - - -
-
- - - - -
-
- -
-
-
- - - - - - - - - - - - - - - diff --git a/tags/hack/index.xml b/tags/hack/index.xml deleted file mode 100644 index 3d88415..0000000 --- a/tags/hack/index.xml +++ /dev/null @@ -1,41 +0,0 @@ - - - - Hack on Mil años de solitario - https://CoderSherlock.github.io/tags/hack/ - Recent content in Hack on Mil años de solitario - Hugo -- gohugo.io - en-us - Copyright (c) 2016 - 2016, Pengzhan Hao; all rights reserved. - Sat, 30 Jul 2016 18:10:20 -0400 - - - - Pokemon Go Hack - https://codersherlock.github.io/post/Pokemon-Go-Hack/ - Sat, 30 Jul 2016 18:10:20 -0400 - - https://codersherlock.github.io/post/Pokemon-Go-Hack/ - - -<h1 id="catch-them-all-until-bored">Catch them all until bored</h1> - -<h1 id="preface">Preface</h1> - -<p>I never imagined that I will truly write something for hacking a game. Though I have to admit that Pokemon Go is a huge heat and different from other games, it still hard to believe that I took movement to make it better(or worse?). I was a big fun of ingress, and thanks to one of my best friends, Kevin, who was also a huge fan to ingress, recommended me this game. Due to some well known reasons, Ingress didn&rsquo;t become popular at my country. But time flies, I break through the wall, and come to a free land which can play Niantic&rsquo;s game. Unfortunately, this time, the only thing restrict me from playing LBS game is limitation of my spare time. Working in the Lab makes me exhausted <strong>EVERYDAY</strong> and the place where I am now is so barren which even doesn&rsquo;t have much insects and birds(I mean Weedle and Pidgey). -<em>afk I have to battle a nearby gym now</em> -Anyway, after coming back, I think I write too much on useless words, so let me keep it straight forward. My imagination of this hacking project is very simple, which is making an auto bot helping me go through all experiences a Pokemon trainer will face. In first stage, my goal is making the bot smartly picking up a route to walk, catch all Pokemons and supply from PokeStops.</p> - -<h1 id="todo-list">TODO List</h1> - -<p>-[X] Test API --[ ] Finish Walk Algorithm --[ ] Finish other movement, etc. catch, hatch --[ ] Smart Walking route --[ ] Pokemon Predict (Thanks to Pokevision&rsquo;s idea) --[ ] Become a Pokemon Master</p> - - - - - diff --git a/tags/hack/page/1/index.html b/tags/hack/page/1/index.html deleted file mode 100644 index 9bd7a4f..0000000 --- a/tags/hack/page/1/index.html +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/tags/index.html b/tags/index.html deleted file mode 100644 index a59afdd..0000000 --- a/tags/index.html +++ /dev/null @@ -1,183 +0,0 @@ - - - - - - - - - - - - - - - - - Tags - Mil años de solitario - - - - - - - - - - - - -
- -
- -
-
- - -
- -
-
- -
Tags
- - - android - - arm - - game - - github - - hack - - research - - -
-
- - - - -
-
- -
-
-
- - - - - - - - - - - - - - - diff --git a/tags/research/index.html b/tags/research/index.html deleted file mode 100644 index 3066617..0000000 --- a/tags/research/index.html +++ /dev/null @@ -1,220 +0,0 @@ - - - - - - - - - - - - - - - - - Research - Mil años de solitario - - - - - - - - - - - - -
- -
- -
-
- - -
- -
-
-
Research
- - -
-
-
Sat, Aug 20, 2016
- -
-
Partial content of this post won’t be showed public on this blog. I will generally talking about how I organized my experiment and how I did such a work. As for data and observation, I will create a google docs for it. However, I will also give precise conclusion of my experiments. Google Docs Used Command Solve Android Read_Only Issue mount -o rw,remount /system mount -o ro,remount /system Using tc
- - - - -
-
- - -
-
-
Mon, Aug 15, 2016
- -
-
As always, feel free to ask. // Sherlock Motivation I got some issues about compile seafile to android, so instead of doing so, I start to figure out some other synchronize workflow. Rsync is one of the most mature synchronization solution. So I made the decision on planting rsync to android. Pre-work Rsync is a sync program with delta sync feature and based on SSH connection. So all we need to do is SSH support and cross compile tool-chain.
- - - - -
-
- - -
-
-
Sat, Jul 30, 2016
- -
-
Motivation This project is working for delta sync from mobile to server. Currently, there’s no mobile program/solution has supporting to delta sync(Include Dropbox/ Goggle Drive). But the truth is that almost every pc version sync program can work as delta sync properly or not. So in this article, I’ll provide a workbench for cross compilation and evaluation. And finally come up with a reason of how to port better incremental synchronize solution on mobile platform.
- - - - -
-
- - - - - -
-
- - - - -
-
- -
-
-
- - - - - - - - - - - - - - - diff --git a/tags/research/index.xml b/tags/research/index.xml deleted file mode 100644 index 8efa174..0000000 --- a/tags/research/index.xml +++ /dev/null @@ -1,233 +0,0 @@ - - - - Research on Mil años de solitario - https://CoderSherlock.github.io/tags/research/ - Recent content in Research on Mil años de solitario - Hugo -- gohugo.io - en-us - Copyright (c) 2016 - 2016, Pengzhan Hao; all rights reserved. - Sat, 20 Aug 2016 01:44:59 -0400 - - - - Rsync Experiment Towards X86 VS ARM - https://codersherlock.github.io/post/Rsync_Experiment_Towards_X86_VS_ARM/ - Sat, 20 Aug 2016 01:44:59 -0400 - - https://codersherlock.github.io/post/Rsync_Experiment_Towards_X86_VS_ARM/ - - -<p>Partial content of this post won&rsquo;t be showed public on this blog. I will generally talking about how I organized my experiment and how I did such a work. As for data and observation, I will create a google docs for it. However, I will also give precise conclusion of my experiments.</p> - -<p><a href="https://docs.google.com/a/binghamton.edu/document/d/1sCjsC1pXcfgECp3do2oySsG9kW7UZ3BTEXvDlau1vIE/edit?usp=sharing">Google Docs</a></p> - -<h4 id="used-command">Used Command</h4> - -<h5 id="solve-android-read-only-issue">Solve Android Read_Only Issue</h5> - -<pre><code>mount -o rw,remount /system -mount -o ro,remount /system -</code></pre> - -<h5 id="using-tc-to-limit-bandwidth-on-host-server">Using tc to limit bandwidth on host server</h5> - -<pre><code># Apply speed limits -sudo tc qdisc add dev {DEV_NAME} handle 1: root htb default 11 -sudo tc class add dev {DEV_NAME} parent 1: classid 1:1 htb rate 1kbit -sudo tc class add dev {DEV_NAME} parent 1:1 classid 1:11 htb rate 1kbit - -# Delete limitation profile -sudo tc qdisc del dev {DEV_NAME} root -</code></pre> - - - - - Cross Compile RSync ARM - https://codersherlock.github.io/post/Cross-Compile-RSync-ARM/ - Mon, 15 Aug 2016 15:44:05 -0400 - - https://codersherlock.github.io/post/Cross-Compile-RSync-ARM/ - - -<p>As always, feel free to ask. // Sherlock</p> - -<h1 id="motivation">Motivation</h1> - -<p>I got some issues about compile seafile to android, so instead of doing so, I start to figure out some other synchronize workflow. <a href="https://rsync.samba.org/">Rsync</a> is one of the most mature synchronization solution. So I made the decision on planting rsync to android.</p> - -<h1 id="pre-work">Pre-work</h1> - -<p>Rsync is a sync program with delta sync feature and based on SSH connection. So all we need to do is SSH support and cross compile tool-chain. Similar to what I mentioned in <a href="https://codersherlock.github.io/post/Cross-Compile-Seafile-2-ARM/">previews blog</a>, Android NDK and environment export need to be done before compilation. -To enable normally use of compiled program, we need to make android support SSH. My solution is just install <a href="https://play.google.com/store/apps/details?id=berserker.android.apps.sshdroid&amp;hl=en">SSHDroid</a> from Google Play Store.</p> - -<h1 id="cross-compile-rsync">Cross-Compile Rsync</h1> - -<p>Running following script to build rsync. It will generate a executable file named rsync in the root directory.</p> - -<pre><code>$ ./configure --build=${BUILD_SYS} --host=${TOOLCHAIN} -$ make -</code></pre> - -<h1 id="push-rsync-to-android">Push RSync to Android.</h1> - -<p>After installing SSHDroid, we can now push our arm-version-rsync to target machine.</p> - -<pre><code>$ adb push rsync /data/local/tmp -$ adb shell - -$ cd /data/data/berserker.android.apps.sshdroid/dropbear -$ mv ../../../local/tmp/rsync . -</code></pre> - -<h1 id="run-rsync-with-argument">Run Rsync with argument</h1> - -<p>Now we can easily use rsync in android shell. Similar to what we use on PC.</p> - -<pre><code>$ ./rsync -e &quot;./ssh&quot; {target-data} {target-location}:{target-directory} -</code></pre> - -<h1 id="references">References</h1> - -<p><a href="http://stackoverflow.com/questions/8130889/build-rsync-for-android">Build Rsync for Android</a></p> - - - - - Cross Compile Seafile to ARM - https://codersherlock.github.io/post/Cross-Compile-Seafile-2-ARM/ - Sat, 30 Jul 2016 14:02:34 -0400 - - https://codersherlock.github.io/post/Cross-Compile-Seafile-2-ARM/ - - -<h1 id="motivation">Motivation</h1> - -<p>This project is working for delta sync from mobile to server. Currently, there&rsquo;s no mobile program/solution has supporting to delta sync(Include Dropbox/ Goggle Drive). But the truth is that almost every pc version sync program can work as delta sync properly or not. So in this article, I&rsquo;ll provide a workbench for cross compilation and evaluation. And finally come up with a reason of how to port better incremental synchronize solution on mobile platform.</p> - -<h1 id="pre-work">Pre-work</h1> - -<p>Basically, I used the native android compilation tool-chains, <a href="https://developer.android.com/ndk/downloads/index.html">Android NDK</a>, as working tools. Due to my working situation, I use a <a href="https://shield.nvidia.com/tablet/k1">Nvidia Shield Tablet</a> as target device. As <em>Zengwen</em> said in his <a href="http://zwyuan.github.io/2016/07/17/cross-compile-glib-for-android/">blog</a>, newest updated NDK might has some issue which can influence compilation progress. So you can find <a href="http://stackoverflow.com/questions/6849981/where-do-i-find-old-versions-of-android-ndk">other version</a> of NDK once you have some problems. Based on what <em>Zengwen&rsquo;s</em> blog mentioned, we can write following useful system environment and export in terminal.</p> - -<h2 id="prerequisites">Prerequisites</h2> - -<pre><code>$ sudo apt-get install build-essential -$ sudo apt-get install pkg-config automake autoconf libtool -</code></pre> - -<h2 id="link-with-standalone-tool-chains">Link with standalone tool-chains</h2> - -<p>In order to build standalone tool-chains, we need first to export following system environment. After doing that, we can use following command to build a standalone tool-chains from downloaded NDK.</p> - -<pre><code>$ ${NDK}/build/tools/make-standalone-toolchain.sh \ - --toolchain=arm-linux-androideabi-4.9 \ - --stl=gnustl \ - --arch=arm \ - --ndk-dir=/home/moslab/Android/android-ndk-r12b \ - --package-dir=/home/moslab/Android \ - --install-dir=/home/moslab/Android/android-ndk-toolchain \ - --platform=android-22 -</code></pre> - -<h2 id="original-system-environment-configuration">Original System Environment Configuration</h2> - -<p>[TODO]-&gt; I will fix this part later.</p> - -<pre><code># Android NDK sources and standalone toolchain is put here -export DEV=~/Android/ - -# All the built binaries, libs and their header will be installed here -export PREFIX=/opt/android - -# Don't mix up .pc files from your host and build target -export PKG_CONFIG_PATH=${PREFIX}/lib/pkgconfig - -# GCC for Android version to use -# 4.9 is the only available version since NDK r11! -export GCC_VER=4.9 - -# The building system we are using (Linux x86_64) -export BUILD_SYS=x86_64-linux-gnu - -# Set Android target API level -export ANDROID_API=22 - -# Set Android target arch -export ANDROID_ARCH=arm - -# Set Android target name, according to Table 2 in -# https://developer.android.com/ndk/guides/standalone_toolchain.html -export ANDROID_TARGET=armv7-none-linux-androideabi - -# The cross-compile toolchain we use -export TOOLCHAIN=arm-linux-androideabi - -# This is a symlink pointing to the real Android NDK r12b -export NDK=${DEV}/android-ndk - -# The path of standalone NDK toolchain -# Refer to https://developer.android.com/ndk/guides/standalone_toolchain.html -export NDK_TOOLCHAIN=${DEV}/android-ndk-toolchain - -# this one is the absolute, prebuilt path -export SYSROOT=${NDK}/platforms/android-${ANDROID_API}/arch-${ANDROID_ARCH} - -# this one is the absolute, prebuilt path -export CROSS_PREFIX=${NDK}/toolchains/${TOOLCHAIN}-${GCC_VER}/prebuilt/linux-x86_64/bin/${TOOLCHAIN} - -# Non-exhaustive lists of compiler + binutils -export AR=${CROSS_PREFIX}-ar -export AS=${CROSS_PREFIX}-as -export LD=${CROSS_PREFIX}-ld -export NM=${CROSS_PREFIX}-nm -export CC=${CROSS_PREFIX}-gcc -export CXX=${CROSS_PREFIX}-g++ -export CPP=${CROSS_PREFIX}-cpp -export CXXCPP=${CROSS_PREFIX}-cpp -export STRIP=${CROSS_PREFIX}-strip -export RANLIB=${CROSS_PREFIX}-ranlib -export STRINGS=${CROSS_PREFIX}-strings - -# Set build flags -# Refer to https://developer.android.com/ndk/guides/standalone_toolchain.html -export PATH=$PATH:${PREFIX}/bin:${PREFIX}/lib -export CFLAGS=&quot;--sysroot=${SYSROOT} -I${SYSROOT}/usr/include -I${PREFIX}/include -fPIE -DANDROID -Wno-multichar&quot; -export CXXFLAGS=${CFLAGS} -export CPPFLAGS=&quot;--sysroot=${SYSROOT} -I${SYSROOT}/usr/include -I${NDK_TOOLCHAIN}/include/c++/ -DANDROID -DNO_XMALLOC -mandroid&quot; -export LIBS=&quot;-lc -lstdc++ -ld&quot; -export LDFLAGS=&quot;-Wl,-rpath-link=-I${SYSROOT}/usr/lib -L${SYSROOT}/usr/lib -L${PREFIX}/lib -L${NDK_TOOLCHAIN}/lib&quot; -</code></pre> - -<h1 id="compile-process">Compile Process</h1> - -<p>To compile seafile, we should compile ccnet and libsearpc first. As for these two projects, they all have their own dependencies, so we must follow some order to run the compilation.</p> - -<h2 id="libsearpc">libsearpc</h2> - -<h3 id="glib">glib</h3> - -<h4 id="libiconv">libiconv</h4> - -<h4 id="libffi">libffi</h4> - -<h4 id="gettext">gettext</h4> - -<h3 id="libjasson">libjasson</h3> - -<h2 id="ccnet">ccnet</h2> - -<h3 id="libuuid">libuuid</h3> - -<h2 id="seafile">seafile</h2> - -<h1 id="preferences">Preferences</h1> - -<ul> -<li><a href="http://zwyuan.github.io/2016/07/17/cross-compile-glib-for-android/">zwyuan</a></li> -</ul> - - - - - diff --git a/tags/research/page/1/index.html b/tags/research/page/1/index.html deleted file mode 100644 index b72945c..0000000 --- a/tags/research/page/1/index.html +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file