Bits from Debian: Build Android apps with Debian: apt install android-sdk
In Debian stretch, the upcoming new release, it is now possible to build Android
apps using only packages from Debian. This will provide all of the tools needed
to build an Android app targeting the "platform"
android-23 using the SDK
build-tools 24.0.0. Those two are the only versions of "platform" and
"build-tools" currently in Debian, but it is possible to use the Google binaries
by installing them into /usr/lib/android-sdk.
This doesn't cover yet all of the libraries that are used in the app, like the
Android Support libraries, or all of the other myriad libraries that are usually
fetched from jCenter or Maven Central. One big question for us is whether and
how libraries should be included in Debian. All the Java libraries in Debian
can be used in an Android app, but including something like Android Support in
Debian would be strange since they are only useful in an Android app, never for
a Debian app.
Building apps with these packages
Here are the steps for building Android apps using Debian's Android SDK on
Stretch.
sudo apt install android-sdk android-sdk-platform-23export ANDROID_HOME=/usr/lib/android-sdk- In build.gradle, set compileSdkVersion to 23 and buildToolsVersion to 24.0.0
- run
gradle build
- add
maven url 'file:///usr/share/maven-repo'to repositories - use
compile 'com.android.tools.build:gradle:debian'to load the plugin
build-tools-24.0.0 and
android-23 platform are available. Currently, the Debian Android Tools
Team is not aiming to cover the most
common use cases. Those are pretty well
covered by Google's binaries (except for the proprietary license on the Google
binaries), and are probably the most work for the Android Tools Team to cover.
The current focus is on use cases that are poorly covered by the Google
binaries, for example, like where only specific parts of the whole SDK are used.
Here are some examples:
- tools for security researchers, forensics, reverse engineering, etc. which can then be included in live CDs and distros like Kali Linux
- a hardened APK signing server using apksigner that uses a standard, audited, public configuration of all reproducibly built packages
- Replicant is a 100% free software Android distribution, so of course they want to have a 100% free software SDK
- high security apps need a build environment that matches their level of security, the Debian Android Tools packages are reproducibly built only from publicly available sources
- support architectures besides i386 and amd64, for example, the Linaro LAVA setup for testing ARM devices of all kinds uses the adb packages on ARM servers to make their whole testing setup all ARM architecture
- dead simple install with strong trust path with mirrors all over the world
Consulting for Valve in my spare time
I ve been playing in a 5e campaign for around two months now. In the
past ten days or so I ve been reading various source books and
Internet threads regarding the design of 5th edition. I d like to
draw some comparisons and contrasts between 5th edition, and the 3rd
edition family of games (DnD 3.5e and Paizo s Pathfinder, which may be
thought of as 3.75e).
The first thing I d like to discuss is that wizards and clerics are no
longer
Weblate is growing quite well in last months, but sometimes it's development is really driven by people who complain instead of following some roadmap with higher goals. I think it's time to change it at least a little bit. In order to get broader feedback I've sent out short survey to active project owners in
(Note, those memory sizes are RSS, minus shared )
It also was taking an unexpected long time, but then, I hadn t cloned a large repository like mozilla-central from scratch in a while, so I wasn t sure if it was just related to its recent growth in size or otherwise. So I collected data on 0.4.0 as well.
Less time spent, less memory usage ok. There s definitely something wrong on master. But wait a minute, that slope from ~2GB to ~4GB on the git-remote-hg process doesn t actually make any kind of sense. I mean, I d understand it if it were starting and finishing with the Import manifest phase, but it starts in the middle of it, and ends long before it finishes. WTH?
First things first, since RSS can be a variety of things, I checked
There are two things of note on this data:
Aha! I thought. That definitely looks much better. Less gap between what glibc says it requested from the system and the RSS size. And, more importantly, no runaway increase of memory usage in the middle of nowhere.
I was preparing myself to write a post about how mixing allocators could have unintended consequences. As a comparison point, I went ahead and ran another test, with the
Heh. It turns out glibc was acting up all alone. So much for my (plausible) theory. (I still think mixing allocators can have unintended consequences.)
(Note, however, that the reason why the python allocator exists is valid: without it, the overall clone took almost 10 more minutes)
And since I had been getting all this data with 0.4.0, I gathered new data without the python allocator with the master branch.
This paints a rather different picture than the original data on that branch, with much less memory use regression than one would think. In fact, there isn t much difference, except for the spike at the end, which got worse, and some of the noise during the Import manifests phase that got bigger, implying larger amounts of temporary memory used. The latter may contribute to the allocation patterns that throw glibc s memory allocator off.
It turns out tracking memory usage in python 2.7 is rather painful, and not all the tools paint a complete picture of it. I hear python 3.x is somewhat better in that regard, and I hope it s true, but at the moment, I m stuck with 2.7. The most reliable tool I ve used here, it turns out, is
I've written parts of this story in the past, but never in one place
and never in much detail. So why not now?
In 1982 my family moved house, so one morning I went to school and
at lunch-time I had to walk home to a completely different house.
We moved sometime towards the end of the year, and ended up spending
lots of money replacing the windows of the new place. For people
in York I was born in Farrar Street, Y010 3BY, and we moved to a place on Thief Lane, YO1 3HS. Being named as it was I "ironically" stole at least two street-signs and hung them on my bedroom wall. I suspect my parents were disappointed.
Anyway the net result of this relocation, and the extra repairs meant
that my sisters and I had a joint Christmas present that year, a ZX Spectrum 48k.
I tried to find pictures of what we received but unfortunately the web doesn't remember the precise bundle. All together though we received:
After months of trying, I've finally got my hands on a Nintendo NES Classic Mini.
It's everything I wish 
As I announced in mailing lists a few days ago, the Debian SunCamp (DSC2017) is happening again this May.
SunCamp different to most other Debian events. Instead of a busy schedule of talks, SunCamp focuses on the hacking and socialising aspect, without making it just a Debian party/vacation.












To be honest, at this stage I'd actually prefer ads in Wikipedia to having
ever more intrusive begging for donations. Please go away soon.
Great news! The
Since I use this as base for other PHP packages like
Conferences
After quite a bit of work, we finally have the
I was sent a package in the post, with lots of blank stickers and a couple of pens. I ve now signed a load of stickers, and my hand hurts. More details about exactly what this is about soon :)