This will be a short overview as I underestimated how much travel time I’d need to the airport.
Alexandre explaining the release process. Meaning, the various freezes, the various releases, etc.
I’ll continue from the previous blog post and update as I can (depends on Wi-Fi, 3G).
The keynote it’s quite interesting. Mohammad talks about many people still having very old hardware. My system is 7 years old. However, that’s still pretty new compared to what some people are using. GNOME 3 making use of hardware acceleration created a pretty big problem. BlankOn is an Indonesian distribution and latest versions are based on Debian. So my assumption about openSUSE usage might be a bit off Learned during a break that Fedora is also used quite heavily in Indonesia.
Mohammad also explained why there’s yet another distribution. In brief, the Indonesian culture is very different from what’s common currently in GNOME. It’s not ok to say no, so if that would happen to someone who just starts out, they’d leave and never come back. BlankOn guides this, acts like a shell around Indonesian culture and upstream.
This lightning talk covered making use of configuration management.
After the lightning talks we’ll have lunch. Then talks will be divided across 4 rooms. I’ll probably attend the Open Source software in shoes industry by Iwan S. Tahari.
The university grounds are amazing with really nice buildings. It would be pretty amazing to study here.
This talk explained how Open Source was being used by a entire company. It covered the various problems that they encountered.
Problems they had to overcome is dealing with rolling blackouts (electricity) and a major problem is documentation. The company provides a gift to anyone who improves the documentation.
Chen spoke about travelling across Thailand and China to explain FOSS hardware to children. He was part of a group of 24 people in total. The travel itself was quite intense, moving to cities and small towns. They trained it seems like hundreds of people at each place they went to.
He later explained that as in Thailand there’s just one child per family, there’s a real focus on that child. Parents encourage their children to do something special. This really assisted in having loads of people who helped to train as well as loads of children to be trained.
In a video you could see how the children used hardware to build a small device on wheels which could pick up small plastic bottles. I’m terrible at guessing ages, they seemed to be at most 10 years old, probably much younger.
Shobha talked about the difficulties to encourage people to use Linux within her university in India. The general feedback was that Linux is difficult and for coders. Strangely, this also came from people studying to become developers. They really didn’t want to even investigate or make any effort. This while they should have it easier because of at least knowing English.
One person at the talk commented that instead of switching, what worked for his country is to start at a really young age. Then they don’t really question. This approach worked well enough that it now is affecting decisions made by the government.
After that there were various lightning talks. Most were in Indonesian, so I’ll skip their pictures.
In the evening André and I bumped into two locals. They took us (wondered later if they wanted that as saying no is not done) to a local food place. They laughed quite a bit as you had to eat with your hands and I guess it was pretty obvious I never did that with this type of food. They also took pictures, wonder where those will end up I did get a copy, but not sharing them!
Arrived at GNOME asia! Went here together with André Klapper. We followed the guide created by the locals to get from the airport to Depok. We’re staying quite close to the university, so we followed most of the guide. In the bus an Indonesian sitting next to is was quite amused that we had to pay 50000 IDR instead of the actual price of 40000 IDR. Basically a foreigner tax
Currently we’re following an Indonesian talk about translating GNOME by Andika Triwidada.
David King gave a talk about the basics of GNOME development. There wasn’t much feedback, so wondered if we had the right audience.
Ekaterina and Alexandre gave a hands on explanation on how to contribute to GNOME. The asked for interested people in translation and documentation. There was also a person interested in engagement and someone else in testing.
Kat split people up in groups. Each group was paired with a known contributor. I volunteered to help with documentation. It was quite fun to assist with explaining things that you either know way too well yourself or bits that you hardly know (finding documentation bugs). We explained how the process works in practice, Bugzilla, IRC, etc. My group was first to assign patches to the chosen bug, and not because I explained everything very well. E.g. we initially cloned the wrong repository at 150KB/s.
On May 7-9 2015 I’ll attend GNOME asia. It will be held in Depok, West Java, Indonesia (30km below Jakarta). I’m going there because:
It will be the first time ever to attend a non-European conference, so I’m quite curious how it’ll be like. I’ve requested partial sponsorship from the GNOME Foundation, which was approved even if I missed some kind of deadline. I guess it helps that I only ask for partial
I’ve already bought tickets and I’ll travel for the first time with Emirates. I can checkin 30kg of luggage and carry 7kg. The 30kg is twice what I’ve ever brought on a plane. I dislike having a heavy suitcase and I’m usually amazed that some people are at the airport with massive amount of suitcases. Especially considering that having just one big and good suitcase is not cheap. Bringing loads of stuff with you to me seems like a huge burden (buying suitcases and the impact it has when you travel). If you go to a warm country, you can do without a lot of clothing. I’m still wondering if there really is something heavy I should bring
Copy pasting from https://wiki.gnome.org/Projects/ConsoleKit. We announced this as well on distributor-list, which we expect any distributor of GNOME to be subscribed to (please do so!). Discussion was held on desktop-devel-list.
ConsoleKit is a framework for registering and enumerating login and user sessions. It is currently deprecated and unmaintained, though the project was recently forked into a backward compatible
ConsoleKit2 project. that is getting limited maintenance.
The functionality of ConsoleKit has been superseded by
logind which is a
systemd component. logind provides nicer APIs and better integration with the system. It supports multiple seats per-machine, and has a mechanism for provisioning devices to unprivileged programs. Although systemd is not available for all systems, there have been a number of initiatives to fill the gap left by ConsoleKit, including:
LoginKit(logind compatible api on top of ConsoleKit2);
systemd-shim(limited support for some of the systemd apis);
systembsd(a reimplementation of the systemd apis portable to BSD distributions).
Some GNOME components still support ConsoleKit in a best-effort, last-ditch-fallback sense, though, the ConsoleKit codepaths aren’t as widely tested. Some components now require logind to function properly. Distributions that wish to ship without logind in GNOME 3.16 need to patch ConsoleKit support back in to those components:
For GNOME 3.18 we expect anyone not being able to use logind to make use of
systembsd. Likely more modules will remove ConsoleKit codepaths.
Within a short period, two people showed up with proposals for games for inclusion with GNOME 3.16. One is a 2048 clone, the other is a revival of Atomix (last maintenance was GNOME 2.14). Both proposals seem to be maintained by just one person.
The 2048 clone might use a not-yet finished library. The usage of that library will help development of the library (easier when you have use cases, etc). Atomix needs to be ported from old technologies to the latest ones. If I’m not mistaken, I think I encouraged the inclusion of Atomix during the 2.x days.
I’m quite looking forward to having both games available on my machine. Being a packager for Mageia means that I can basically decide when that’ll be. Though Mageia currently is gearing up to Mageia 5 and that put limits on what I can do.
The number of people on average making a games development by has differed a lot over since 1980s. Initially it was often one person, eventually big teams, then smaller again (flash games), etc. Jeff Wofford wrote a very detailed log of his experiences pursuing game development. According to the blog, one-man game development is done out of interest, but often also to make a (good) living.
Making money from game development in recent times is very short lived. If you make a game, it’ll quickly get cloned. Quite interesting is the number of available applications in the iOS app store.
I have no idea how long it takes to create a nice game for a mobile iOS. I do think above graph impresses me: more than 1.2 million apps within 4.5 years. How long have distributions been around? I recall trying either Red Hat 5.0 or 5.2.
With the distribution model and e.g. the 2048 game, say the game was originally made for Linux. Then once the development is over, you’ll have to persuade various distribution packages to include your game. This is easiest if you’re known. So aligning yourself with GNOME makes this process easier for you. To ensure your game is available under as many distributions as possible, you’ll have to search for the various distributions, then per distribution ensure that your game gets packaged.
Packing does have various benefits from a technical standpoint. No duplication of libraries, entire QA process, etc. I package at Mageia and I don’t like anything that’s not packaged. I basically won’t install it unless there’s a package for it.
Say your spend 2 weeks of development on your game until you have the first version that you want to beta test. After that you need to convince distributions to package it. Then these distributions have to ship their stable versions. After which your users have to upgrade their distributions. If you release a new version every 2 weeks (easily possible if your game is under active development): how likely will your users run the latest version? Distributions usually freeze their distribution to increase quality. This can take anywhere from a month to 4 months. Various distributions also require freeze exceptions for new versions of software.
To notice new versions, distributions use various methods. Fedora tries to download a potential higher number than whatever is within the distribution. It uses that to notify the packager. Then for various well known download sites (e.g. download.gnome.org) it checks the directory. At Mageia we check various download sites as well as other distributions. Which gets messy as we sometimes use a slightly different name.
If your developing a game or small application for Linux, the experience is just terrible.
Various people within GNOME are creating a freedesktop.org additional way to distribute games and applications. Meaning: the intention is that it works not just for GNOME, nor just for one distribution. The details are available on https://wiki.gnome.org/Projects/SandboxedApps, though I’ll just copy/paste the two main goals:
As the talk is about 45 minutes I’ll just recap a few things from it:
Now I didn’t fully watch the entire talk, nor read all of the discussion around it. I know that NVidia will only release their proprietary versions which will work with Wayland beginning of 2016 or so. The talk mentions wanting to use kdbus, which doesn’t have to be systemd-only, but, well…
It’s unfortunate that this talk wasn’t given at FOSDEM. There was one talk about Wayland+systemd application sandboxing, but I found it very lacking (I expected something like what Alexander Larsson spoke about).
I skipped over many details in this post. If you want more details, see the various links, post a comment or ask the people who actually know. For that and also if you want to work on something technically interesting: join the gnome-os-list mailing list.
In The Netherlands, various retail chains are either having difficulties, or they’re going bankrupt. Having it difficult: HEMA (huge stores though smaller than V&D), V&D (huge stores). Bankrupt/payment issues: Free Record Shop (CDs), Halfords (bikes/stuff for your car), Mexx (clothing) and Schoenenreus (shoes). These are stores you often see in any city centre. At least a few of these chains were taken over by investment companies.
It’s hard to care. Often they sell exactly the same Chinese products you find everywhere. There’s nothing really unique to any store, so I often compare chains by the prices they offer.
For HEMA and V&D, the chain Action offers a much smaller amount of products, but much much cheaper. Further, Action often completely changes whatever they offer. This makes it interesting to go back to the store a lot. V&D and HEMA: I know what they offer, I only go there when Action doesn’t have it in stock. V&D is trying to lower their costs by demanding 40% less rent and no rent payment for 4 months. The company they’re renting from is trying to evict them. Officially they can easily rent out the space to others, though somehow you can also benefit from leaving a building completely empty.
For clothing, Primark offers clothing for much reduced prices. A t-shirt can be had for a few Euros. A while back I bought loads of shirts and t-shirts, the most expensive item was 4 EUR. Quality wise Primark is questionable, but other clothing chains are not that much better. Price wise, it can be more economical to buy the lower quality Primark version.
For bikes, loads of bike shops rely on the tax benefit that existed when you buy a bike to travel to work. The maximum price of a lot of bikes exactly match the maximum you could get as tax benefit. Internet bike shops were often excluded from the tax benefit, while stores offering the tax benefit we often much more expensive. Resulting in most of the tax benefit mostly actually going to the shops. This tax benefit ended starting from 2015. I won’t be sad if loads of bike shops go out of business. Though according to the bike shops, their business has increased due to businesses now providing company bikes. I don’t believe them.
Schoenenreus offers bad quality shoes for a lowish price. It actually doesn’t work out at all. A shoe bought there might be worn out in 1 month, max 3. It shouldn’t be that costly to make shoes or offer better quality. I think people not having money for a better quality shoe probably found a chain which offers better quality for the same price, making the business model of Schoenenreus obsolete. It seems that in The Netherlands you can either buy a nice looking shoe and it’ll wear out, or buy a really ugly one that’ll last you for years. Most well known brands seem to have lowered their quality.
Various chains that do well are considered to be cheap while they aren’t (Mediamarkt), are cheap (Action), refocussed on offering unique products (Bijenkorf). I do wonder what’ll happen to the rarely needed stuff which is only offered by a few shops. As well as the space occupied by the huge stores. I do hope that stores adapt to the changes. Just because you were successful or your store existed for a long time doesn’t mean you’re entitled to continued success.
Before the start of the GNOME 3.14 cycle, Ryan Lortie announced his intention to make most GNOME modules depend on a logind-like API. The API would just implement the bits that are actually used. According to Ryan, most GNOME modules only use a selection of the logind functionality. He wanted to document exactly what we depend on and provide a minimal API. Then we could write a minimal stub implementation for e.g. FreeBSD as we’d know exactly what parts of the API we actually need. The stub would still be minimal; allow GNOME to run, but that’s it.
As didn’t see the changes being made, I asked Ryan about it during GUADEC. He mentioned he underestimated the complexity in doing this. Further, his interests changed. Result: still have support for ConsoleKit in 3.14, though functionality wise the experience without logind (and similar) is probably getting worse and worse.
In future I see systemd user sessions more or less replacing gnome-session. The most recent discussions on desktop-devel-list indicated something like gnome-session would still stay around, but as those discussions are quite a while ago, this might have changed. We’re doing this as systemd in concept does what gnome-session does anyway, but then better. Further, we could theoretically have one implementation across desktop environments. I see this as the next generation of the various XDG specifications.
From what I understood, KDE will also make use of user sessions, logind, etc. However, they seem to do this by calling the existing software “legacy” and putting everything into something with a new name. Then eventually things will be broken of course. Within GNOME we often try to make things really clear for everyone. E.g. by using wording usch as “fallback”. It makes clear our focus is elsewhere and what likely will happen. I guess KDE is more positive. It might still work, provided someone spends the effort to make it work. In any case, the messaging done by KDE seems to be very good. I don’t see any backlash, though mostly similar things is occurring between GNOME and KDE. There are a few exceptions, e.g. KWin maintainer explicitly tries to make the logind dependency as avoidable as possible. I find the KDE situation pretty confusing though; it feels uncoordinated.
Edit: At least the user session bit in KDE is undecided. It was talked about and seemingly agreed between two well known KDE people, see here, but still undecided. Same person clarifying this requested that I clarify that I’m not from KDE. I am not from KDE.
In a lot of distributions there is still a lot of hacks to make Display Managers, Window Managers and Desktop Environments work with the various specifications and software written loads of years ago. Various software still does not understand XDG sessions. They also do NOT handle ConsoleKit. Distributions add hacks to make this work, doing the ConsoleKit handling in a wrapper.
This is then often used in discussions around logind and similar software.
“My DM/WM/DE is simple and just works. There is no problem needing to be solved.”
There are various distributions which have as goal to make everything work, no regressions are allowed. If you use such a distribution and given enough manpower, enough hacks will be added which on short term ensures things work. However, those temporary hacks are hacks. E.g. if some software should support XDG sessions and it does not, eventually the problem is with that software.
Looking at various distributions, I see that those temporary hacks are still in place. Especially funny one is Mageia, where XDG session support is second class. The XDG session files are generated from different configuration files. This results in fun times when a XDG session file changes. Each time this happened, the blame is quickly with the upstream software. “Why are they changing their session files, it should just never change”. While the actual problem is that the upstream files are thrown away!
The support for unmaintained software has at various points resulted in preventable bugs in maintained software. While at the same time the maintained software is considered faulty. I find this tendency to blame utterly ridiculous.
There are many people who have some sort of dislike for systemd. In the QA session Linus had at Debconf, he mentioned he appreciates systemd, but the does NOT like the bughandling. In various other forums I see people really liking systemd, but still having their doubts about the scope of systemd.
When either liking or disliking systemd, it is important to express the reason clearly and in a non-agressive way. Unfortunately there are a few people who limit their dislike in ways that’ll result in them being ignored completely. Examples are:
If a project sees functionality within systemd that is useful, it is you’ll not get very far with stating that the project is bad for having used that. Or suggesting that there is some conspiracy going on, or that the project maintainer is an idiot. That’s unfortunately often the type of “anti-systemd advocacy” which I see.
Suggesting that systemd-shim is an alternative for logind. It’s a fork and it took 6 months or so to be aligned with latest systemd changes. Further, it’s a fork with as purpose to stay compatible. It’s headed by Ubuntu (Canonical) who are going to use systemd anyway.
The suggestions are often so strange that I have real difficulty summarizing them.
E.g. focussing on journald. Disliking e.g. udev or dbus, confusing the personal dislike as a reason everyone should not use systemd.
E.g. stuff “systemd is made only for desktops”, “all server admins hate it”. If you believe this to be true, suggest to do your homework. That, or staying out of discussions.
According to some of the anti-advocacy, there’s a lot of really bad things in systemd. A few examples: my machine should continuously corrupt the journal files, my machine often doesn’t boot up, etc. As it’s not the case, such a claim pretty much destroys any credibility they might have had with me.
Anyone trying systemd for the first time will also notice that it’ll just work. Consorting to this type of anti advocacy will just backfire because although systemd is NOT perfect, it does work just fine.
Projects have depended on systemd because it does things which are useful. As a person you might not need it. The other one believes he does need the functionality. Saying “I don’t” is not communication. At least ask why the other believes the functionality is useful!
Systemd often adds new functionality. A large part of that functionality might have been available before in a different way. It’s something which most people seem to worry about. It’s usually added as a response to some demand/need. Having a project listen to everyones needs is awesome!
This I find interesting. The insults are not just limited to e.g. Lennart, the insults are to anyone who switched to systemd. A strategy to of having people use something other than systemd by insulting them is a very bad strategy to have. Especially if you lack any credibility with the very people you need and whom you are insulting.
There are too many blank statements which apparently has to be taken as truths. Saying that something is just bad (udev, dbus, etc) will be ignored if the other person doesn’t see it as a problem. “That systemd uses this greatly used component is one of the reasons not to use it”. Such a statement is not logical.
Binary logging by journald. Anti-advocacy turns this into one of the biggest problems. The immediate answer by anyone is going to be that you can still have syslog and log it as you do now. If you advocated this as a huge issue, then anyone trying to decide on systemd will quickly see that this huge issue is not an issue at all.
The attempt is to make people not use systemd. In practice, if the huge issues aren’t an issue, then the anti advocacy is actually helpful to the adoption. The biggest so called problems are easy, so anyone quickly gains confidence in systemd. Not what was intended!
For this I usually just troll back
What I suggest to anyone disliking systemd is to not make entire lists of easily dismissed arguments. Keep it simple (one is enough IMO), understandable but also in line with the people you’re talking to. Understand whom you’re talking to. Anything technical can often be sorted out or fixed, suggest not to focus on that.
Once the reason against is clearly explained, focus upon what can be done to change things. Here the focus should be on gaining trust and give an idea on what can be done (in a positive way).
Due to having seen the same arguments for at least 100 times, it’s easy to quickly start ignoring anyone who doesn’t like systemd. I’ve noticed someone saying on Google+ that the systemd should not be used because Lennart is a brat. Eventually enough is enough and it is time to tell these people to STFU. But that’s not according to one part of the GNOME Code of Conduct, “assume people mean well”. Not believing in people meaning well and ignoring it has bitten me various times.
Turns out, this person is concerned that his autofs mounted home directories won’t be supported some time in the future. So this person does follow what Lennart writes. While it appeared to me he’s just someone repeating the anti-advocacy bit, he has a valid concern. I still think it is unacceptable to call people names and said so, but it
is equally important to ensure things are still possible.
Systemd developers are quick to point out that something is not supported. E.g. a kernel other than Linux. A libc other than glibc. Some use cases are not. But there’s a important thing to know: would the usecase be impossible, or would it take way more effort?
The type of effort is also important. For a different kernel/libc, you’d need a developer with good insight into these things. For others, it might be possible by customizing things. I assume the autofs homedirs will always be possible, just not always taken into account.
If it is not supported but can be used anyway if you’re an “ok” sysadmin, that’ll mean for most people it’ll be possible. A “not supported by systemd” does therefore not 1 on 1 relate to impossible. If you want a different libc but you’re are a sysadmin and not a developer that’s quickly seen as impossible. While another “not supported” is actually perfectly possible.
IMO it is good that not everything is supported. Ensure that whatever is supported works really well. But at the same time, I think more focus should be on ensuring people do understand that a “not supported” does not mean “cannot work”.
I like *BSD. I like avoiding unneeded differences, this easies portability.
There are some interesting tidbits I’ve learned. Apparently OpenBSD has a GSoC student working on providing alternative implementations for hostnamed, timedated, localed and logind. I don’t think it’s enough, because it needs to be maintained fully. I further think that a logind alternative cannot be written together with the other bits during just a summer. Whatever it is, I think this will make it even easier to use systemd. This is not what some of the anti-advocacy is intending to happen. Oh well.
There seems to be another round of (temporary) increase of people disliking systemd. I’m pretty sure it’ll quiet down to normal levels again once Debian has systemd in a stable release for a few months.
Eventually they’ll notice that although systemd is not perfect, it just works. Unfortunately, this all doesn’t help in with the concerns I still have.
What to do with ConsoleKit?
Some quick thoughts about GUADEC 2014 in no particular order (apologies for any weird English: written while a bit tired):