0 A.D. Financial Report, November 2015

In the interest of transparency, the Wildfire Games team would like to report on the finances of the project as of 2015-11-25.

0 A.D. has funds in three places:

  1. Funds earmarked for the project and held in trust by US-based non-profit organization Software in the Public Interest, Inc. (hereafter “SPI”);
  2. A private account in the US, under the name of former project leader, Jason Bishop (Wijitmaker). This account is a legacy of the time before we became affiliated with SPI;
  3. Flattr, a Sweden-based microdonation provider.

SPI Earmark for 0 A.D.

As of 2015-10-31, the 0 A.D. earmark is USD 34,410.05.

  • Web hosting costs about USD 85-90 per month, or USD 1,000 a year, and are paid directly from these funds.
  • Some of these funds (approximately USD 5,200) will soon go towards reimbursing Erik Johansson (feneur) who has bought the perks we promised our donors.
  • We know donors have been waiting for their perks for a long time. We sincerely apologize for the long delay in perk fulfillment.

Other Accounts

In our “legacy” US bank account, we have USD 332.82.

On Flattr, we have EUR 619.75 available, which are approximately USD 662.27.


In total, we have approximately 35,405.14 USD in all three accounts.

Concluding Remarks

The 0 A.D. project finances are managed by the Treasury Committee: Erik (“feneur”), Adarash (“MishFTW”) and Aviv (“Jeru”). We welcome your comments and suggestions on the forums.

systemd — unit dependencies and order

Welcome back to our continuing series on systemd features. As you’ve guessed from our previous articles, systemd brings more power and flexibility to service startup and management. One of the most important changes in systemd from legacy SysVinit is how it starts up units.

You may have heard from casual users that systemd starts everything together. Some people believe this is true, and that’s why the system starts faster. But the reality is not quite that simple. Let’s look a little more deeply at how systemd understands unit relationships.

Unit dependencies

Unit files include the feature of dependencies. Any unit may want or require one or more other units before it can run. These dependencies are set in unit files with the directives Wants and Requires. The difference between these is simple.

  • If unit1 has Wants=unit2 as a dependency, when unit1 is run, unit2 will be run as well. But whether unit2 starts successfully does not affect unit1 running successfully.
  • When unit1 has Requires=unit2, however, again both units will run, but if unit2 does not succeed, unit1 is also deactivated. This happens regardless of whether the processes of unit1 would otherwise have worked fine.

Did you notice something subtle about this description? It doesn’t talk about order. When systemd starts your system, it loads all unit files and reads through them to determine dependencies like this. When unit1 runs in these examples, unit2 is run at the same time. It’s important to know that dependencies and ordering are two different things to systemd.

Here’s an example of dependencies in part of the sshd.service unit file:


So when sshd.service runs, the sshd-keygen.service will run as well. However, sshd-keygen.service does not need to succeed for sshd.service to run successfully.

Why would a dependency like this need to exist? In this case, the sshd-keygen.service creates new SSH keys for a server if they do not exist. We always want to check whether these keys exist before the SSH server starts. If they already exist, the service unit exits with an error indicating so. But in that case of course, we still want the SSH server to run as usual.

Unit order

This doesn’t mean systemd can’t put things in proper order. Without any other instructions, systemd would run a group of units at the same time. This is probably why some people believe systemd starts everything at the same time (or “in parallel”). It is sometimes necessary, of course, for processes to run in a certain order.

Fortunately, systemd also has unit directives for this issue as well, Before and AfterThese directives work pretty much as you’d expect:

  • If unit1 has the directive Before=unit2, then if both units are run, unit1 will be executed fully before unit2 starts.
  • If unit1 has the directive After=unit2, then if both units are run, unit2 will be executed fully before unit1 starts.

Once again, note how this ordering does not affect dependencies. Neither case causes unit2 to run. Let’s look at the sshd.service unit again:

After=network.target sshd-keygen.service

The ordering directive After ensures that the SSH server will not run until after the host key generation unit, and after the network is up. (The network.target unit ensures that various units bring up the network.) Dependencies like Wants and Requires are often used together with After to preserve proper dependencies and order together.

Faster boot time

You may recall from earlier in this series that SysVinit started every service in sequence, based on numbering. However, systemd automatically sorts through unit files to read dependency and ordering information. It uses this information to allow many services to start almost simultaneously, while preserving order where needed.

This handling is one reason startup can be faster under systemd. Faster boot time isn’t primarily why systemd was invented, but it’s often a side benefit of how it handles units.


Ubuntu 16.04 LTS (Xenial Xerus) Will be Powered by Linux Kernel 4.4 LTS

The Ubuntu developers have published a new iteration of the Ubuntu Kernel Team Weekly Newsletter to inform all users of the world’s most popular free operating system about the latest work done for the kernel packages of Ubuntu 16.04 LTS.

According to the developers, the current daily build of the Ubuntu 16.04 LTS (Xenial Xerus) remains based on the Linux 4.2 kernel packages of the stable Ubuntu 15…. (read more)

New Opera 34 Beta Is Based on Chromium 47.0.2526.58, Brings Linux and Mac Fixes

Opera Software, through Aneta Reluga, announced the release and immediate availability for download and testing of a new Beta build for the upcoming Opera 34.0 web browser for all supported operating systems, including GNU/Linux, Mac OS X, and Microsoft Windows.

Based on the latest Chromium 47.0.2526.58 open-source web browser software, Opera 34.0.2036.16 Beta is a small bugfix release and fixes several issues reported by users since the previous Beta build, all in order to… (read more)

Ubuntu Touch Devs Might Release an OTA-8.5 Hotfix Update for Ubuntu Phones

Earlier today, November 25, Canonical’s Łukasz Zemczak sent his daily report for the day of November 24, 2015, informing all Ubuntu Phone users about the latest work done by the Ubuntu Touch developers for the Ubuntu for phones operating system.

We reported the other day that the Ubuntu To… (read more)

Debian-Based Webconverger 33.1 Kiosk Linux OS Is Out with Mozilla Firefox 42.0

The developers of the Debian-based Webconverger Linux distribution used for deployment in places like Internet cafes have announced the release of Webconverger 33.1, which is now available for download.

According to the brief release notes posted by the project’s devs, Webconverger 33.1 is still based on the latest stable release of the Debian GNU/Linux 8 (Jessie) opera… (read more)

GTK+ 3.20 Gets Another Milestone with Theming Improvements and Bugfixes

After only three days from the announcement of GTK+ 3.19.2, the GTK+ developers have announced the release and immediate availability for download and testing of the third milestone towards GTK+ 3.20.

According to the internal changelog, which has been attached at the end of the article for reference, GTK+ 3.19… (read more)

Black Lab Software Announces Linux-Based Mac Mini-Competitor Black Lab BriQ v5

We have been informed by Black Lab Software, the creators of the Ubuntu-based Black Lab Linux operating system about the general availability of their new class of hardware, the Black Lab BriQ version 5.

The 5th version of the Black Lab BriQ computer comes with many new features, among which we can mention the re-implementation of VGA for all editions, HDMI support, air cooling support for reduced power usage, as well as support for adding either a 2.5″ SATA drive or a SDD … (read more)

antiX MX-15 Linux Distro Gets a Second Beta Release, Based on Debian GNU/Linux 8.2

The developers of the antiX MX Linux distribution have announced the release and immediate availability for download and testing of the second Beta build of the upcoming antiX MX-15 operating system.

Based on the latest stable Debian GNU/Linux 8.2 (Jessie) operating system and dubbed Fusion, antiX MX-15 Beta 2 is here to fix mainly annoying issues discovered by the antiX developers or reported by users since the previous Beta release of the distribution, as well as to imple… (read more)

Beautiful KaOS 2015.11 Is Out with KDE Plasma 5.4.3, KDE Frameworks 5.16

Today, November 24, the developers of the beautiful KaOS GNU/Linux distribution have had the great pleasure of announcing the release and immediate availability of a new installation media for the operating system, dubbed KaOS 2015.11.

According to the release notes, KaOS 2015.11 is a feature release that includes all the latest software updates that have been pushed to the distribution’s default so… (read more)

GNOME Photos App Now Tries to Become an Image Editor Too

The GNOME developers are working around the clock these days to update the core components and applications of the GNOME desktop environment for the 3.19.2 milestone of the upcoming GNOME 3.20 release.

We are always monitoring the development cycle of various popular projects here on Softpedia, and GNOME just happens to be one of them. GNOME 3.19.2 milestone should be available for testing by the end of the week, and the GNOME developers are releasing these days updates to … (read more)

Fedora Devs Need Your Help to Test the GNOME on Wayland Session for Fedora 24

The developers of the well-known Fedora Linux operating system have announced their plans to make the GNOME on Wayland session the default for the upcoming Fedora 24 Workstation Edition.

If you’re reading the news lately, you would know by now that Wayland is growing with each day that passes, and it tries hard to become the default display server on all the important Linux kernel-based operating systems, as a drop-in replacement for X11 (X Windows System).

If Wayland is… (read more)

Fedora Linux’s DNF Package Manager Reaches Version 1.1.4, Available for Fedora 23

Fedora/DNF developer Jan Šilhan announced earlier today, November 24, the immediate availability for download of new maintenance releases for the DNF package manager of the Fedora 23 Linux operating system, including DNF-PLUGINS-CORE.

According to Mr. Šilhan, DNF is now at version 1.1.4 and it is mostly a bugfix release that resolves various issues reported by users since the previous version of the software, adds new methods into the DNF query API, and improves the documen… (read more)

KNOPPIX 7.6.0 Live Linux OS Officially Released, Features Popular 3D Programs

After teasing users with the release of the KNOPPIX 7.6.0 Live Linux operating system on November 14, 2015, Klaus Knopper announced today, November 24, that the distribution is officially available for anyone who wants to download it.

According to the release notes, KNOPPIX 7.6.0 is now based on the latest Debian GNU/Linux 8 (Jessie) operating system, but it’s powered by a recent Linux 4.2 kerne… (read more)

Distribution Release: KaOS 2015.11

The developers of KaOS, a rolling release distribution with a strong focus on KDE software, have announced the availability of a new installation snapshot. The new installation media, KaOS 2015.11, offers a number of package updates, new artwork and experimental support for running the Plasma desktop in a….

Solus Operating System Could Get Full Disk Encryption Soon

Solus is still getting some pretty cool features, and it looks like developers are preparing to get some sort of disk encryption ready just in time for the launch.

Building an operating system from scratch usually means that developers also forgo some of the perks that come with a powerful OS. For example, if Ubuntu is used as a base, you can also take advantage of the Ubiquity installer to get all the features you need. One of those features is disk encryption.

All of t… (read more)

Radeon Software Crimson Driver 15.11 for Linux Is Out and It’s the Same as Catalyst

The new Radeon Software Crimson Driver from AMD has been released for the Linux platform as well, but it looks like the Linux users will have to wait a little bit more for the new UI or other features.

Numerous users, including myself, were excited to see that AMD was paying proper attention to the Linux drivers, and there was a special slide in their official communique about Linux gaming. In fact, they were saying that, with the help of the new drivers, Linux players shou… (read more)

Diving into Juju

In my last post, I introduced you to Juju and talked about how it could help you. Now I’d like to walk you through some real world examples of Juju in action.


Bundles are used to represent workloads. Bundles can be simple, like the WordPress example in the previous post, or complex.


If you’re not familiar with OpenStack, it is a collection of services for managing a cloud computing platform. Think Infrastructure as a Service (IAAS).

I’ve heard horror stories from people who’ve spent months trying to deploy and configure OpenStack. Several different tools for automating an OpenStack Deployment have been developed, and this video from the October 2015 OpenStack Summit compares them (with Juju a strong favorite):

How easy is it to install OpenStack? It’s this easy as this:

$ juju quickstart openstack-base

Sit back and wait, and soon you’ll have an OpenStack environment with Keystone, Glance, Ceph, Nova-compute and more ready for testing.

Big Data

This is the area I’m personally most excited about. Big Data solutions are all aimed at taking some of the complexity out of analysing huge datasets.

The base of these workloads is Apache Hadoop, bundled with tools like mapreduce, Tez, Hive, Pig and Storm. Drink from the Twitter firehose with Flume. Crunch Open Data from your favorite city or government to spot trends in voter turnout or track neighborhood gentrification or crime rates.


Containers are the new hot thing, but there’s no reason why you can’t use Juju to orchestrate the deployment of them. Docker? No problem. Kubernetes? Juju does that, too.

There are advantages to containerizing your application. It gives you a nice layer of isolation, and the addition of container networking with Flannel makes it even more powerful.

Juju steps in to compliment the benefits of a container by offering a way to manage and scale them in the cloud. As a developer, you can write a dockerfile to launch your application, and use the Docker charm to deploy it.

Things at scale

For a typical development workflow, you may only need the bare minimum of machines to run your application. Once you deploy to the cloud for production use, you’re going to need the ability to scale your application.

For example, if your database is running slow, you can easily add scale up:

juju add-unit mysql -n 3

This would add three new units to MySQL and configure replication and failover, things that are complicated and often fragile to do by hand.


The cloud offers a dizzying array of hardware options. Spinning rust or SSD. Lots of memory, or CPU, or both. 1 or 10 Gigabit networking. You can speculate about which options are best suited for your application but even the most well-informed of guesses can be wrong when put to practice.

Benchmarking provides the ability to exercise a service in order to evaluate its performance, and collect hardware and software statistics to monitor how your workload is performing. Maybe you want to test your database under load, or stress your web application, or identify potential bottlenecks. Could it be disk or network I/O slowing you down? Is it poorly optimized database queries? This is the tool you’ll want to use to answer those questions.

Workloads are complex things, with many moving parts. Like Hydra, bottlenecks are a shifting target; strike down one and two more rise to take it’s place.

In order to tune workloads, I’ve gone hunting for blog posts or white papers showing best practices for the services I use. I’m often frustrated, though, because all the pretty graphs in the world don’t help me if I can’t replicate the results. It leads to a trust issue; sure, it ran fast for you, but how do I recreate it?

Benchmarking’s focus on repeatable, reliable testing means that you can repeat benchmarks over and over again and expect to see similar results. You can then make adjustments to your hardware or software, repeat the benchmark and compare the results.

That effort can then be distilled into best practices that anyone using or deploying a service can benefit from.


Juju is a robust devops tool, reducing the complexity of cloud development and orchestration. It’s growing community of users and contributors, including IBM, Intel, Microsoft, Cisco and China Telecom means it’s going to be around for a long time.

Test drive Juju on jujucharms.com

Read original article

Ubuntu GNOME 16.04 LTS Gets First GNOME 3.19 Packages for Daily Build

The Ubuntu GNOME developers have been very busy with their work on the 16.04 LTS, and they released some details about the packages that have been updated and about various other changes.

Ubuntu GNOME is one of the official Ubuntu flavors, and it’s been around for some time now. It implemented the vanilla version the GNOME stack, with a few small modifications. It’s a little behind the current GNOME releases, but that can’t really be helped, and it will remain in that state… (read more)

RAR 5.30 Brings Multipart Support for 7-Zip and Testing for tar.gz, tar.bz2 and tar.xz

RAR is a powerful archive manager that can be used to reduce the size of files and to decompress RAR, ZIP, and other formats. A new major upgrade has been released, bring the version number up to 5.30.

Despite the reputation of RAR as being a Windows application, it’s good to know that it’s also available on other platforms, like Linux for example. Sure, it’s not the most popular, but that hasn’t stopped the RAR developers from supporting Linux.

Unlike the version that s… (read more)