The Big Switch: How Munich switched 15,000 PCs from Windows to Linux


Linux Voice published this great article for free on their site about how Munich switched 15,000 PCs from Windows to Linux.

Munich city council has migrated 15,000 workers from Windows to Linux. It’s a great success story for Free Software, and it upset Microsoft enormously. We visited the city and talked to Peter Hofmann, the man behind the migration – so read on for all the juicy details about what went right, what went wrong, and what made Steve Ballmer sweat…

Note! This article originally appeared in issue 2 of Linux Voice. We’re making it freely available under the terms of the Creative Commons for everyone to share. (Here is the PDF from the magazine.) We’d like to start a campaign to get more city councils and local governments to switch to Linux, so please send the PDF (or a link) to your councillors, show them how Linux can save them money and make them more secure, and let us know how you get on!

Hirschgarten, in the west of Munich, is one of Europe’s biggest beer gardens, with over 8,000 places to sit. It’s a spectacular sight in summer: hundreds of benches as far as the eye can see, trees providing some shelter from the heat, and a vast number of people relaxing and enjoying the city’s famous beers.

But while 8,000 is an impressive number, it’s not as impressive as 15,000. That’s how many people the Munich city council has switched from Windows to Linux over the last decade. Migrating workers of Germany’s third-largest city was no easy task and there were plenty of hurdles along the way, but by and large the project has been a storming success.

We’ve been following the progress of LiMux (Linux in Munich) for years, and now that the project is effectively complete, we decided to visit the city and talk to the man in charge of it. Read on to discover how it all started, how Microsoft tried to torpedo it, and whether other cities in the world can follow Munich’s lead…

Humble beginnings

Cast your mind back to 2001, and the state of Linux at the time. It was well established as a server OS and fairly well known among computing hobbyists, but still a small fish in the desktop pond. Gnome and KDE were still young whippersnappers, while hardware detection needed improvements and top-quality desktop applications were lacking in many areas.

So for an entire city council to even consider moving to a largely unknown platform was a major event. Still, it happened gradually, as Peter Hoffman, the project leader for LiMux, told us in his office:

“Back in 2001, a member of the Munich city council asked: are there any alternatives to using Microsoft software? And based on that question, we put out a tender for a study, which compared five platform options. One was purely Microsoft-based, one was Windows with OpenOffice, one was Linux with OpenOffice, and so forth.”

As the study progressed, two main options emerged as choices for the council: remaining with a purely Microsoft solution, which would involve upgrading existing Windows NT and 2000 systems to XP; and moving to a purely Linux and open source alternative. “If you lay more emphasis on the monetary side, the pure Microsoft alternative would have won, or if you lay the emphasis on the strategic side, the open source alternative was better.”

Doing the maths

That was interesting enough – that staying with Microsoft would have been cheaper. Given the cost of buying licences for Windows and Office, you’d think that sticking with Microsoft would’ve cost far more than switching to Linux. However, the calculations were based on a five-year period, so they mostly covered migration costs (staff, technical support, retraining users etc.) rather than operational costs (buying new hardware, licence fees and so forth). But how did the LiMux team determine that Linux was a better choice strategically?

“With the Linux alternative, we saw that it would be possible to implement the security guidelines we wanted to have. At the time there was a lot of discussion about Windows 2000 and the calling home functionality. If you asked Microsoft at that time, ‘which one of your programs are calling home?’, they said ‘err, yeah, maybe some, or not’. So we didn’t get a clear answer at that time, and we thought there would be a great advantage from a security perspective to using Linux.”

One of the biggest aims of LiMux was to make the city more independent. Germany’s major centre-left political party is the SPD, and its local Munich politicians backed the idea of the city council switching to Linux. They wanted to promote small and medium-sized companies in the area, giving them funding to improve the city’s IT infrastructure, instead of sending the money overseas to a large American corporation. The SPD argued that moving to Linux would foster the local IT market, as the city would pay localcompanies to do the work.

Ballmer marches in

In May 2003, the city council was due to vote on whether to make the big switch to Linux. But Microsoft didn’t stand still: Steve Ballmer, the infamously loud CEO, flew over to speak with Munich’s mayor, Christian Ude. But this had an adverse effect, as Peter explains:

“Steve Ballmer tried to convince our mayor that it would be a bad decision to switch to open source, because it’s not something an administration can rely on. But some members of the city council said: what are we, if one member of a big company simply comes here, and he thinks he can just switch our opinions?”

And it just got worse for Microsoft’s boss. “Our mayor was preparing for a meeting with Steve Ballmer, and because English is not his native language, he asked his interpreter: ‘What shall I say if I don’t have the right words?’ And the interpreter replied: ‘Stay calm, think and say: What else can you offer?’ Later on during the meeting, our mayor was quickly at the point where he had nothing to say to Ballmer, except for ‘What else can you offer?’ several times. Years later, he heard that Ballmer was deeply impressed by how hard he was in negotiations!”

Alea Jacta Est

So Steve Ballmer flew back to Microsoft HQ, the Munich city council voted, and it voted in favour of Linux. History had been made. GNU/Linux and Free Software users around the world were pleasantly surprised by the decision – especially as it had been made in Munich and Bavaria, one of the more conservative areas of Europe. Something big was going to happen, but it needed time to take root, as Peter explains:

“We could not to start the migration next day, but wanted to do a proof of concept first. In 2004, we started to take preliminary steps for the migration, and one of them was to put out a tender for a Linux-based solution. Ten companies approached us trying to sell their solutions, and a consortium of two small companies, Gonicus and Softcon, won the tender with a solution based on Debian.”

Gonicus provided consultants, and the city council recruited new technicians – eventually there was a team of 13 working on the LiMux project. They started creating a custom version of Debian and by 2006 the roll-out was beginning. But the choice of Debian caused them some minor headaches further down the line:

“In 2008 we saw that Debian was clearly stable, a good thing, but not the best if you want to use new hardware. They are always a few years behind. We also wanted to have a clear timetable for when new versions would be available. In Debian, when it’s ready it’s ready, so you can’t base a release plan on it. Those two things were the basis for switching from Debian to Kubuntu.”

From Debian to Kubuntu

Another reason for using Kubuntu was the KDE desktop. It was clear to the LiMux team that some users would fight back against the change – especially if they regarded the current system as good enough, and the new one as something forced on them by politicians. So KDE was chosen as it could provide an interface very similar to that of Windows NT and 2000, as used by the various departments of the city at the time. How did people respond?

“There are different levels of users. Some would say: ‘This button was green before, and it isn’t green now, so I cannot work like this!’ And the others say: ‘Just give me something, I have to work, and I’ll get used to it’. We had that kind of range of users, but most were the first type.”

Peter and his team worked to ease the migration process by organising meetings and roadshows around the city where people could come and see Linux in action. They had Q&A sessions and even a Microsoft-free zone set up with Linux computers to play with. The goal was that users would get a preview of what they’d be using a year or two down the line.

“Some people came to us and said: ‘Can I use a mouse? I thought Linux was only command line based’. One person came with a floppy disk and said ‘My most important documents are on this. Is it still possible to work with them?’ So we showed that it was possible to open them on Linux. We were always trying to give information to the users: what was happening, and why it was happening.”

While LiMux was the central project in charge of the operating system, the roll-out and migration was handled by individual departments. There was no specific deadline: departments would choose by themselves when to handle the transition, and the LiMux team would provide the technical know-how to perform the migration.

Read the full article here.

Adafruit publishes a wide range of writing and video content, including interviews and reporting on the maker market and the wider technology world. Our standards page is intended as a guide to best practices that Adafruit uses, as well as an outline of the ethical standards Adafruit aspires to. While Adafruit is not an independent journalistic institution, Adafruit strives to be a fair, informative, and positive voice within the community – check it out here:

Join Adafruit on Mastodon

Adafruit is on Mastodon, join in!

Stop breadboarding and soldering – start making immediately! Adafruit’s Circuit Playground is jam-packed with LEDs, sensors, buttons, alligator clip pads and more. Build projects with Circuit Playground in a few minutes with the drag-and-drop MakeCode programming site, learn computer science using the CS Discoveries class on, jump into CircuitPython to learn Python and hardware together, TinyGO, or even use the Arduino IDE. Circuit Playground Express is the newest and best Circuit Playground board, with support for CircuitPython, MakeCode, and Arduino. It has a powerful processor, 10 NeoPixels, mini speaker, InfraRed receive and transmit, two buttons, a switch, 14 alligator clip pads, and lots of sensors: capacitive touch, IR proximity, temperature, light, motion and sound. A whole wide world of electronics and coding is waiting for you, and it fits in the palm of your hand.

Have an amazing project to share? The Electronics Show and Tell is every Wednesday at 7pm ET! To join, head over to YouTube and check out the show’s live chat – we’ll post the link there.

Join us every Wednesday night at 8pm ET for Ask an Engineer!

Join over 36,000+ makers on Adafruit’s Discord channels and be part of the community!

CircuitPython – The easiest way to program microcontrollers –

Maker Business — “Packaging” chips in the US

Wearables — Enclosures help fight body humidity in costumes

Electronics — Transformers: More than meets the eye!

Python for Microcontrollers — Python on Microcontrollers Newsletter: Silicon Labs introduces CircuitPython support, and more! #CircuitPython #Python #micropython @ThePSF @Raspberry_Pi

Adafruit IoT Monthly — Guardian Robot, Weather-wise Umbrella Stand, and more!

Microsoft MakeCode — MakeCode Thank You!

EYE on NPI — Maxim’s Himalaya uSLIC Step-Down Power Module #EyeOnNPI @maximintegrated @digikey

New Products – Adafruit Industries – Makers, hackers, artists, designers and engineers! — #NewProds 7/19/23 Feat. Adafruit Matrix Portal S3 CircuitPython Powered Internet Display!

Get the only spam-free daily newsletter about wearables, running a "maker business", electronic tips and more! Subscribe at !

No Comments

No comments yet.

Sorry, the comment form is closed at this time.