Hello Turris fans.
Welcome to our first developer update. This is suppose to be periodic summary of software development status from Turris team. Our hope is that this will give you look under our hands. Of course you can do that already using our Gitlab but in this format it should be more pleasant to read.
Previous month was a busy one. As you all probably know we revealed our new hardware design called Turris MOX. With beginning of this month we started campaign on Idiegogo with ambitious goal of collecting 250 thousands of USD. We hope that MOX will manage it. If you have use for additional small well network
connected device then give MOX a look.
Software in previous month was in name of 3.10 update. And as you might already know this is a big one. It contains new features we were preparing for almost four months and some of them were in pipeline for even a year. With this update we release all promised and not yet fulfilled stretch goals from Turris Omnia campaign. Well of course some of them are still not yet complete (such as Pakon) but we will continue on improving them.
Now let’s proceed to our developer update. Idea is to give you few sentences to inform you what some developers were doing. Not every developer will be noted here as he might just work on something less interesting, or not yet public, or simply be on holiday. Features and changes described in this topic will most likely not be in next update and they might not be even in later ones. This is real look under our developer’s hands.
@shenek, our Foris developer, is busy with something he calls “denucification”. Just to explain: Nuci is, and in close future was, configuration back-end that was suppose to add network configuration abstraction. But in reality it was just another layer between Foris and the rest of the system. It was designed to be general but for example without support for notifications. Because of that @shenek is replacing Nuci with Foris specific back-end called foris-controller. In RC (Turris OS 3.10) there is already Foris version that no longer uses Nuci for core parts. Lately he is busy with porting plugins (such as OpenVPN).
Michal Lupečka, our web developer, was working hard on Foris Pakon plugin. Using Pakon plugin in Foris you can see where devices from your local network were connecting to. You can already test it now in RC (Turris OS 3.10). He was also working on our new Foris demo. This demo should show people interested in Turris what they can expect to see in Foris web interface and what kind of settings they can easily tweak that way.
@miska developed Foris Storage plugin. Using this plugin you can move LXC containers and Pakon database to external storage so that you won’t damage internal memory with excessive writing. Plugin will format your external storage and with reboot it will move all data in
/srv directory on it. We highly recommend you to use it to mitigate possible internal storage wear out. It is going to be part of Turris OS 3.10. On top of Foris Storage plugin @miska was also working on Turris OS 3.10 and far future Turris OS 4.0.
@paja was busy with updating various packages for Turris OS 3.10 and with merging community contributions.
@mpetracek was working on Pakon. He located problem with part of the Linux kernel used by Pakon that was slowing down DNS query. See following topic (unfortunately only in Czech). He created workaround that is going to be part of Turris OS 3.10. On top of that he was also working on Sentinel.
@mprudek added few features to Netmetr such as support for GPS (not used in default configuration on router). But primarily he was working on Sentinel.
Both @mpetracek and @mprudek together with Robin Obůrka and Michal Mládek were heavily working on our new data collection platform called Turris Sentinel. This is going to be a modular system that should allows us to detect threats as fast as detection algorithms allows it. Currently our data analyses are implemented on top of database system. That introduces processing delay and problems with scalability. Turris Sentinel is based on data stream processing and that way shortens delays and allows us to scale whole system up not limiting us to shared database. This is all under heavy development and there is still a lot of work to be done before we release it but it looks promising.
@vojtech.myslivec, our system administrator, was lately preparing and testing deployment for Sentinel. He is using Ansible to manage our servers so he had to implement new roles for it. On top of that he was also working on automated deployment for web applications developed with Django.
I (@cynerd) was mostly working on updater. In Turris OS 3.10 there is change in how updater is invoked. Clunky and old
updater.sh script was replaced with python library
svupdater and with new python script
updater-supervisor. I was also working on updating docker files in OpenWRT so they can build latest Turris OS 3.x.
One of kernel developers, Marek Behún, is at the moment pushing support for Turris MOX to upstream u-boot (see: https://lists.denx.de/pipermail/u-boot/2018-April/326394.html). Together with @brill they both work hard with adding support for new Turris MOX to kernel and u-boot.
This is new format for us. Please leave a feedback if you like it or not. Also this update is little bit special as it’s the first one. It’s expected that all subsequent won’t be so long.