cron.weekly issue #26: PHP-PM, Ubuntu Snap, Jenkins 2.0, Xamarin, Tredly, SOLR & Linux basics


cron.weekly is a newsletter about Linux, open source & webdevelopment. Want to get it in your inbox every Sunday? Subscribe below!

I respect your privacy and you won't get spam. Ever. Just a weekly-ish newsletter about Linux and open source.

Want to help support this blog? Try out Oh Dear, the best all-in-one monitoring tool for your entire website, co-founded by me (the guy that wrote this blogpost). Start with a 10-day trial, no strings attached.

We offer uptime monitoring, SSL checks, broken links checking, performance & cronjob monitoring, branded status pages & so much more. Try us out today!

Image of Mattias Geniar

Mattias Geniar, May 01, 2016

Follow me on Twitter as @mattiasgeniar

Welcome to cron.weekly issue #26 for Sunday, May 1st, 2016.

A slightly shorter issue this time as I’m in the middle of moving places and things are a bit hectic.

Enjoy this edition and expect a bigger one next week. If I’ve missed important news that didn’t make it here, let me know!

News

PHP-PM grows up to be a credible option for high performance PHP

The PHP-PM runtime is a relatively new way to run your PHP code, next to the already existing PHP-FPM method. Benchmarks show up to 800% improved throughput, reaching an increadible 4.000 req/s on commodity hardware.

Ubuntu LTS: many vulnerabilities despite long-term support

A very good reminder that Ubuntu’s LTS releases cover the security updates for the “main” repository (around 7.000 packages) but does not cover the “universe” repository, which exceeds over 45.000 packages and is widely used by many sysadmins.

Cautions (or why it’s hard to write a dupefinder)

Writing a “duplicate file finder” isn’t easy, as there are many caveats to consider. This technical post explains some of those in more detail.

The Linux Scheduler: a Decade of Wasted Cores

A more readable version of the PDF mentioned last week: why after almost a decade, process scheduling on Linux still isn’t the most performant one.

Rust introduces MIR

The Rust language has introduced a new intermediate compiler state: MIR. For the Rust community, this means much faster compilation time for Rust applications, faster execution time and more precise type checking.

Ubuntu Snap Packages: The Good, the Bad, the Ugly

Ubuntu 16.04 introduced the “Snappy” package manager, a new package format specifically for Ubuntu. This post covers the good parts (portability & access to latest releases), the bad (diskspace consumption) and the ugly (the fact that X11 windowing still leaves the user with an insecure system).

SMTP Strict Transport Security

Soon, we’ll be able to further protect our mailservers by enabling “Strict Transport Security” (as known from the HTTP world) in our SMTP servers. The Strict Transport Security enforces the use of encrypted communication.

Tools & Projects

A GNU jobserver

The ‘make’ command, used for building software from source to deploying entire applications, can also control multiple applications in parallel using ‘jobs’. This article further explains the concept.

Elastalert

This tool, by the Yelp team, is built on top of Elasticsearch, Logstash and Kibana and proves the alerting on inconsistencies and anomalies in the data. If you have data being written into Elasticsearch in near real time and want to be alerted when that data matches certain patterns, ElastAlert is the tool for you. If you can see it in Kibana, ElastAlert can alert on it.

More RAM

This kernel (experimental) kernel module allows you to use your graphic cards’ memory as “system” memory. By using persistent memory allocation in OpenGL, you can keep that video memory in active RAM.

ubuntu-make

Ubuntu Make is a command line tool which allows you to download the latest version of popular developer tools on your installation, installing it alongside all of the required dependencie, enable multi-arch on your system if you are on a 64 bit machine. Basically, one command to get your system ready to develop for Ubuntu.

diffshot

This script takes screenshots of every file diff through a Git repo’s commit history. Very useful if you want so share those diffs in a classroom or presentation.

Jenkins 2.0 released

The new release of Jenkins (2.0) is out: you can now more easily describe the chain of automation in your build process through “pipelines“, the most prominent powerful feature of the 2.0 release. Lots of usability and visual differences in this release too. If you’re just getting started with Jenkins, the 2.0 release should make the barrier of entry a lot lower and easier to configure.

Routersploit

The RouterSploit Framework is an open-source exploitation framework dedicated to embedded devices.

Xamarin

The Xamarin project has gone full open source: with Xamarin you can right your applications in open source .NET and compile them for iOS, Android and Windows in one click.

Node.js 6.0 released

This latest release of the Javascript engine is the new LTS release, to be supported for the years to come.

Mosh

Remote terminal application that allows roaming, supports intermittent connectivity, and provides intelligent local echo and line editing of user keystrokes. Mosh is a replacement for SSH. It’s more robust and responsive, especially over Wi-Fi, cellular, and long-distance links.

Hogwatch

A python project that can show the bandwidth usage per process.

Devuan reaches first beta

Back in 2014, several anti-systemd folks launched Devuan, a fork of Debian without systemd. Behind the scenes they’ve been making steady progress to remove all systemd components, and they’ve just launched their first Beta version.

Tredly: containers on FreeBSD

A new player in the container market: Tredly offers containers based on the FreeBSD platform.

Augeas

Augeas is a configuration editing tool. It parses configuration files in their native formats and transforms them into a tree. Configuration changes are made by manipulating this tree and saving it back into native config files.

Guides & Tutorials

SOLR 6.0 reference guide

An impressive 600 page PDF on running SOLR, how to use Documents/Fields/Schema’s, understanding indexing and basic operations, performance tuning, day-to-day management of SOLR and scalability.

Docker Networking and DNS: The Good, The Bad, And The Ugly

A look inside Docker’s DNS round-robin load balancing mechanisme.

Dropbox as a True Git Server

This guide lets you use Dropbox as a git repository server, easily keeping multiple version of one repository in sync with the power of Dropbox.

Choosing the right distro for you (video)

If you’re just getting started with Linux, the amount of choice in distributions can be overwhelming. Which one do you pick? Ubuntu/Debian/CentOS? Once you’ve figured that out, which desktop environment do you pick? KDE, Gnome, Unity? This video explains the differences and give a good introduction to the world of Linux.

Learning Linux: basic Linux tutorials

Once you’ve picked your Linux distro with the video guide above, this textual guide can help you get started with Linux: it explains user interfaces, shells and terminals, entering commands, … By the looks of it, all the basics are covered.

Using DNSSEC and DNSCrypt in Debian

In an effort to increase security, this guide sets up DNSSEC (cryptographic validation of the DNS records you’re using) and DNSCrypt, which encrypts the DNS traffic between you and your DNS resolver. This offers both validation (DNSSEC) as well as encryption (DNSCrypt).

Segfaults are our friends and teachers

As sysadmins, we see segfaults as a “developer problem”: the application quit in an unexpected way, the developer should have a look at it. This post has lots of code examples that can give us more insights into why a program segfaults in the first place.

Scaling systems configuration at Facebook (video)

This video shows how facebook operates its configuration deployment at scale: testing, managing and deploying all of their infrastructure code. Their new configuration management system is no longer cfengine2 but a tool built on Chef.



Want to subscribe to the cron.weekly newsletter?

I write a weekly-ish newsletter on Linux, open source & webdevelopment called cron.weekly.

It features the latest news, guides & tutorials and new open source projects. You can sign up via email below.

No spam. Just some good, practical Linux & open source content.