Profile cover photo
Profile photo
Julian Andres Klode
Debian Developer, Ubuntu Member, and student
Debian Developer, Ubuntu Member, and student

Julian Andres's posts

Sel de Guerande from France or Sal Tradicional from Portugal, that's the question.

In case you wondered about my last post mentioning APT 1.4.1: Yes, it did happen.

In APT 1.2, we switched the daily update job (which also runs unattended-upgrades) from a cron job running at (usually) 6 with a 30 minute delay sleep to a systemd timer running at 6:00 and 18:00, with each up to 12 hours randomized delay.

1.4.1 reverts that to running at 6:00 + a delay of up to 1 hour, because it turned out that just running at any point during the day is too unpredictable for a system admin to be prepared, and if there's trouble it might be not noticed early enough (or well, if it happens during business hours and the database stops .. ouch).

Also changed the timer to only start, so it should actually be able to work reliably at boot now, if it needs to catch up. Also, boot experience to login screen might be faster as a side effect, as the apt job now waits until the network is up, and that can take some time.

Finally, I also made debian/rules run dh_clean again (sorry for that), and Unit193 added Ubuntu's .ddeb files to the list of files understood by apt-ftparchive.

A lot of Ubuntu stuff today:

APT 1.2.20 and 1.3.5 entered xenial and yakkety today. These were the last bigger stable updates, bringing these series up to the state of apt 1.4~rc2 in terms of bug fixes.

1.2.21 and 1.3.6 are basically ready to go (they passed CI, yay!), bringing the bug fixes from 1.4 and 1.4.1 into xenial and yakkety. zesty will also see 1.4.1~17.04.1 (a simple re-upload with version change) soon.

Also should have fixed the binutils problem on trusty where ld crashes on arm64 for some inputs, preventing the bash SRU from compiling. I hope +Philipp Kern is happy :)

Looking for ways to represent domain wildcards in DNS66, my host blocker for Android. Needs to be efficient in performance and memory use.

**.domain Matches everything below domain
*.domain Like above, but only one level
domain No wildcard

Now, if I were on a desktop, I might just generate machine code to recognize the wildcards (yes, I am that crazy). On Android, that might be a bit too involved (I guess you need to generate a dex file with dalvik byte code and put that in a jar).

Any sensible data structure for in-memory use?

Post has attachment
Android's support for vector graphic works just fine on Android 6.0 and newer. But despite 5.X also providing vector support, they can't scale correctly in all modes: They render first and then scale up the bitmap, unless you tell it to scale in "fitXY" mode - that is stretch the image in both directions.

Now, I don't really want to do that. I want to preserve the aspect ratio of my image, but make it as big as possible. Luckily, the image is a square. The fix thus is a custom ImageView that always maintains a square shape, center that horizontally in the layout, and then stretching the image to fit the view.

Thanks for nothing, Lollipop!

Post has attachment

Post has attachment
+Gmail has 3 possible ways to forward email:

(1) The classic mode (which apparently you can't configure anymore) sends the emails from directly to the destination, and adds a Sender field.

(2) Then there is the mode in which Gmail forwards your email to a configurable SMTP server. In this mode, gmail adds no Sender header, which makes sense.

(3) Now finally, if you have (2) and send the email to gmail via SMTP, it still adds no Sender header, but sends the email from its own server like in (1). It does set the Return-Path to the gmail address, though, so I guess that's fine.

Test coverage in the latest DNS66 branch - the branch drops about 160 lines of code steering JsonReader and JsonWriter, and uses GSON instead - is now 27.52% - that's huge, it had 10% less than two weeks ago. And don't forget that half of the code is UI code for which there are no tests - this means the backend code is probably at around 50% coverage now.

I want to do UI testing eventually, but for now I'm fairly happy that the logic is approaching sensible testing levels.

Post has shared content
I welcome this idea. I don't really care that much about ads, but even maintain a blocker for Android. What I really care about are obstrusive ads. Like on mobile, a "popup" add blocking the whole page that you can't click away. Or ads with sounds or videos. A lot of the time, I don't use my own blocker and only turn it on when hitting these kind of ads.

Ads embedded in the flow of the page are fine, as long as they do not delay loading that much. A few images here and there showing some products I might care about can be quite useful.

But if Chrome starts blocking obstrusive ads and most of these end up being non-Google ads from advertisers in the EU, you can expect the EU commission to do their usual "anti-competitive practices" bull shit and fine Google or try to put an end to it.
People familiar with Google’s plans say that the move is to provide better experiences for users and to prevent the growth of third-party ad-blocking apps. #News #GoogleChrome

Post has attachment
DNS66 UI in git, headed for 0.5. Huge change compared to earlier versions and their indigo/pink theme. Also a lot of new features, like a connection​ watchdog, daily host file updates, support for local files, and properly annotated stuff for TalkBack for people with impaired vision.

Oh yes, and a dark mode.

Beta Build:
11 Photos - View album
Wait while more posts are being loaded