XMPP audio and video calls

Ejabberd has supported STUN/TURN for quite some time now, this in conjunction with client support can be used to implement one on one audio and video calls. Since version 2.8.0 Conversations Android client added audio and video call functionality by leveraging on STUN/TURN and XEP-0215. The rest of the XMPP world is following the route opened by them, so I expect to see IOS and regular computer XMPP clients to finally implement these new features too in the upcoming months. Enabling audio and video calls in Ejabberd is actually pretty simple. Provided you have installed the latest release (version 20.04), edit ejabberd.yml: …

Posted on

OpenVPN: tun tap invalid argument (code=22)

After upgrading my OpenVPN server to CentOS 7.5 I had trouble connecting to it. Specifically, I had two different issues: ** the laptop, which is running Fedora 28, was able to connect just fine but DNS resolution was broken. ** OpenVPN for Android was also connecting just fine but reporting a weird error: OpenVPN: tun tap invalid argument (code=22). The first one was caused by me because after the CentOS upgrade procedure was completed I also run yum autoremove which deleted dnsmasq; the solution was fairly simple, reinstall and reconfigure dnsmasq. For the second issue the solution was to enable comp-lzo and voilà, everything started working again. …

Posted on

Self hosting Firefox Sync on CentOS 7

Configuring this piece of poorly documented bloated shit Mozilla came up with was a huge pain in the ass, so excuse the colored language but I am fucking pissed. The idea was to finally implement a system to synchronize Firefox’s bookmarks across multiple devices without giving Mozilla all my personal data. After some minutes spent researching the subject on the interweb I found out the synchronization system is a huge clusterfuck comprised of multiple components: …

Posted on

Compile LineageOS for Oneplus 3 on Fedora 25

Android community is one big cancerous clusterfuck, it is no wonder that finding a decent guide on how to compile Android from source written in a somewhat comprehensible english is pretty much mission impossible. Cyanogenmod Inc. shutting down their wiki and services overnight surely didn’t help either. Required packages on Fedora 25 are (rpmfusion repo must be previously installed): $ sudo dnf install screen java-1.8.0-openjdk-devel git schedtool ncurses-devel ncurses-libs ncurses-compat-libs ImageMagick-devel libstdc++-devel bison gnupg lzma For some reason the compilation process stores some temporary files in /tmp which, in Fedora 25, is mounted on a tmpfs ramdisk. In case the ramdisk runs out of space for some retarded reason the build process instead of halting will go on like nothing happens and produce borked binaries as output. To keep /tmp mounted on HDD run: …

Posted on

Manually backup/restore Android application's data

Android stores application’s data in /data/data directory, it can be accessed via adb only on a rooted phone. To make a backup copy the correspondent directory: $ adb root $ adb pull /data/data/eu.siacs.conversations Application’s data can also be extracted from a full system backup made with TWRP: $ tar -xvf data.ext4.win000 Restoring the backup is the tricky part since Android uses SELinux and every app has it’s own unix user. Before copying back on the phone the already backupped files reinstall the app from f-droid or whatever, then proceed as follow: …

Posted on

OnePlus One

Two weeks ago while wasting time on the interwebs I found by accident a couple of OnePlus One invites. To be honest I wasn’t planning on buying a new phone since my previous Nexus 4 is still serving me well but seeing OPO price (299 € for the 64 GB one) and specs I said: well, fuck it. So far I like it very much, the bigger screen makes general usage more enjoyable and battery life is significantly better than Nexus 4, it lasts 2 days without many problems. I can’t really comment on Cyanogenmod OPO edition or whatever the stock ROM is called since I used it for just the bunch of minutes necessarily to enable USB debug, unlock the bootloader and install recovery and stock Cyanogenmod 11 snapshot M11. One thing I for sure don’t like is the unlock screen, stock Cyanogenmod one is way way better but that’s pretty much it, can’t say more. …

Posted on

CyanogenMod 10.1.2 high network traffic

Ok, I know I fucked up, I know everyone who knows me just a little bit would never expect this, but I got my first mobile phone or, like they call them nowadays: a smartphone. I don’t like the smartphone buzzword since I think the only smart ones here are the guys who are able to sell this stuff for hundreds of bucks to billions of people, so I’ll stick with the old and almost forgotten mobile phone name. Anyway, I got this brand new Nexus 4, played with it a couple of days and then, following the official guide on CyanogenMod site, I installed the latest stable release of it (based on Android 4.2.2). – Why the Nexus 4? Because Nexus devices are the only Android phones worth to be bought. – CyanogenMod works great and with some programs (don’t fucking call them apps, seriously, don’t do it) installed (k-9 Mail, OpenVPN, BusyBox and JuiceSSH) I’m almost able to perform all the tasks I usually do with my workstation or Thinkpad. The only real issue is the process, or whatever it is, called Google Services using an enormous amount of network resources without any apparent good reason. Luckily I’ve a friend called DuckDuckGo which in a bunch of seconds was able to tell me how to solve the issue. The problem seems to be connected to the Google Play Store which is completely retarded and keeps downloading some kind of system updates which obviously is not able to install since I’m not using the stock Android operating system provided by Google. The solution is pretty simple: …

Posted on