# Open Source

## Immolation at the altar of software transmutation

For the past few years we’ve been seeking to leave the grasp of Google as we’ve noticed a serious divergence between its lofty aspirations and its actual provision of services. We have personally been using the Google Workspace services through multiple incarnations and they’ve always worked well, even if Google decides to shove its dick Buzz Meet chat client down your throat. Most of the time you can disable that.

But it is now obvious the teams running these services are under tremendous pressure to monetize the services beyond the cost per user they charge for entrance. What this service does for us, at its core, is the integration between Gmail and Calendar, with everything else being just a good extra to have. Google won this war on the web in the aughts while Microwoft won it on the desktop back in the 90s with Outlook and Excel.

Yes, there are other companies that do this but it is likely you’ll still use the Gmail or Gcalendar apps, the Outlook apps, or the iOS apps if you’re in the Apple ecosystem. Even people self-hosting their own services will default to using these apps as they’re a known interface that doesn’t change too often.

Now, my previous post was Perhaps WSL2 Should be a Wake-up Call, which itself sparked a lively discussion on lobste.rs, where the author makes this comment

And I think one of the reasons for that is the constant software churn in the desktop space. Lots of things, including various GTK/Gnome or KDE components, ritually get tore down, burnt and rebuilt every 6-8 years or so, and at one point you just get perpetual beta fatigue. I’m not sure how else to call it. Much of it, in the last decade, has been in the name of “better” or “more modern” UX, and yet we’re not in a much better position than ten years ago in terms of userbase. Meanwhile, Microsoft swoops in and, on their second attempt, comes up with a pretty convincing Linux desktop, with a small crew and very little original thought around it, just by focusing on things that actually make a difference.

He’s only making a reference to the Desktop space but we think it can also be applied to the web.

Perusing RSS we found this post by someone more or less looking to do the same thing as us: Organize their life by hosting their own services. While the post is from a few months ago (March 2021), most of these principles still apply as we write this post:

• Email is what it is. You just have to fucken deal with it.
• CalDAV and iCalendar are getting even more crufty and their libraries aren’t well maintained. Clients will happily YOLO your data into oblivion if you’re not careful.
• WebDAV is just… okay, I guess? File sync is more or less a solved challenge. But even then keeping notes in Markdown is a challenge. We prefer CommonMark but support is still spotty years after the specification came out.
• Tasks? You’re better off keeping your stuff in text files. It’s that bad. Or use a dedicated service.

Now, those are the protocols. What about the actual software?

Servers:
– Email? Sure, you can run your own, it’s not that hard. Plenty of options out there and AFAIK they’re not immolating themselves anytime soon.
– Nextcloud almost decided immolate itself at the altar of language transmutation cos Owncloud decided to do it and people got jealous. Using PHP 8.
– Radicale is coming along on Python3. But myself I still have a bad taste after the move from Python2 to Python3. That immolation left a lot of ash to clean up.
sabre/dav uses PHP 5.4 🤢
– Other solutions… lol what other solutions?

Clients, mobile:
Email: You’ll probably still use the Gmail, Outlook, or Apple apps via IMAP. The open source options… are not well-maintained, or make questionable UI/UX decisions, or are just plain ugly. They don’t have to be better or more modern like in the quote above, but your eyes shouldn’t feel like bleeding when you open them.
Calendar: DAVx⁵ is coming along, but it’s a client library, enabling apps with an actual UI/UX to talk to your self-hosted services. Android only though. Haven’t found any indications of it.
– You need DAVx⁵ to get Android to sync calendar with the OS. The documentation en’t the best. It does work once you get it to work just don’t fiddle with the thing.
– Using iOS? Good luck, at least Apple decided to build support into it. You’ll cry when they take it away.
– You could use web-based interfaces but… then you have to deal with browsers. Here we must commend Mozilla for turning Firefox into a shitty Chrome clone.
Contacts: You’re still relying on DAVx⁵.
Files: Nextcloud app works just fine on both Android and iOS. It does force you go to through it to get to your files as opposed to actively storing them on your devices; you can use FolderSync. Looking around we didn’t find an equivalent on iOS.
Tasks: Again, you’re better off with plain text files or a dedicated service for this.

Clients, desktop:
Email: Seriously, this is fucken ridiculous. Thunderbird still trudging along but its developers seriously want to self-immolate after Mozilla just cut them away. There are no other serious desktop email clients other than Outlook, or going web-based. Whatever GNOME or KDE devlopers cooked up expect them to switch the interface on you cos they wanted to self-immolate. You could go text based but that only works if you’re familiar with the command line. Most people aren’t.
– Going web-based? Most open source web clients have… questionable interfaces.
Contacts: Again, you’re either using Thunderbird, Outlook, or web-based. No, GNOME/KDE apps don’t count. Yes, I’ve used them.
Files: Nextcloud is pretty nice on this cos it stays out of your way, instead of shoving itself into your workflow like Dropbox tries.
Tasks: You have more variety here but… seriously, just use text files. Or a dedicated service that you like.

For now we’re using Nextcloud. We’re okay with it and we’re personally glad it’s sticking with PHP. We just don’t like its newfound tendency to act like it’s the systemd of sync and collaboration. It calls itself a “suite” but most things are only accessible through the web interface. It works fine and that’s all it has to do.

The problem is the churn of apps around the protocols it uses. I can only imagine what GNOME/KDE apps would be like if their devlopers had stuck with the same paradigms and then iterating on them as time went by. Evolution would have 21 years worth of work. Kmail gets sacrificed to whatever the new version of Qt is.

We’re just rambling now but… We still remember Amarok 1.4.6. That one hurt so bad we started using Spotify instead after Clementine deleted a third of our MP3s.

## All for a fistful of dollars

the gods fucken damnit, Mozilla. This is but one article out of so, so, so many out there that are talking about the death, dearth, and zombification of open source projects. And that’s before we even bring in the tweets.

But sure, those Mozilla Corporation executives deserve millions of dollars so they can look preen themselves when they have to prostate themselves before their capitalist gods making hundreds of times their salaries.

## Geany on Windows 10

Just don’t use it. Use anything else, but don’t use it on Windows.

Failed software from failed developers. It will waste at least an hour of your life and you still won’t get it to run after testing all compatibility modes.

I tried all versions and could not get it to save files. Even running it from command line with switches failed to provide anything useful. It fails silently, with no recourse.

These devs probably all think systemd is a good idea.

## Well, gawdam

Found myself in need of an MP3 tag editor, so I went with what I know: Puddletag.

Issue aptitude install puddletag on the command line, it gets installed without issues.

Then I try to open a folder and I get this.

It’s shit like this that drives people to OS X or back to Windows.

## UNIX vs. FLOS

To me, the core of a UNIX system is a philosophical matter. To quote Mike Gancarz’s The UNIX Philosophy from 1994, UNIX has 9 paramount precepts:

1. Small is beautiful.
2. Make each program do one thing well.
3. Build a prototype as soon as possible.
4. Choose portability over efficiency.
5. Store data in flat text files.
7. Use shell scripts to increase leverage and portability.
8. Avoid captive user interfaces.
9. Make every program a filter.

FLOS is a nearly diametrically opposed design, with design concepts like the following:

• FLOS avoids scripts, and prefers to split tasks into compiled logic interacting with logic-less configuration files.
• FLOS prioritizes ease of machine manipulablity over human manipulablity.
• The components of FLOS communicate over D-Bus rather than sockets and pipes.
• FLOS is built on a core of monolithic programs which attempt to synergisticly manage multiple complex components.
• FLOS leverages features specific to Linux and ignores portability.
• FLOS prefers tightly integrated components to generic solutions.

I’m not sure that this is a bad design, but it is most definitely not UNIX or anything like it.

via Linux Reddit.

This here explains why a lot of stuff simply doesn’t work the way it used to: Xorg, NetworkManager, Pulseaudio. It also explains why no one outside of IT uses Linux for real-world software development; you don’t have to fight OS X to get started writing code. FreeBSD is almost there as well, with people switching over to it to avoid dealing with the eldritch abomination that is D-Bus.

Are FLOS proponents still butthurt by Microsoft? So much that they would turn the OS on top of Linux-the-kernel into a bad imitation of Windows?

## Sinful Interfaces

It is quite telling that Linux is nowhere on the list. This is how hard all open source desktop environments have failed.

GNOME lusted after OSX and became a bad imitation of it. KDE lusted after Windows 7’s candied interfaces, and became bloated. Xfce remains too static and people use it only it is known and stable.

There is some semblance of hope with MATE, Cinnamon, Trinity and Razor-qt, but they’re too young and still need years to achieve feature parity with Windows XP.

I’ve been using Windows 8 and I’ve found I have to fight its UI quirks less than those of Xfce, GNOME or KDE, enticing me to jump back and stop dealing with all these changes.

## Sonido en Linux, o la falta de

Tons esta este articulo en el sitio del New York Times acerca del enfoque de Ubuntu en lo Mainstream. Es un buen articulo. Pero nunca va a pasar.

Preguntas por que? Por el sonido. Ya sabes, la cosa que tu cerebro procesa como entrada auditiva.

No voy a decir mucho al respecto, ya que otros lo han dicho mejor de lo que yo lo podría decir:

Yo solamente he tratado de hacer funcionar una diadema con Skype en mi computadora. Tuve que molerle a las cosas durante una hora antes de que Skype funcionara como se supone debe hacerlo. Esto con una diadema barata de 50 pesos sin control alguno; nada de esas chidas diademas USB para mi por que ya se que no funcionan con el sistema operativo de mi elección.

Todos esos APIs, servidores de sonido, sistemas y demonios…. son ganado Augeo cagándose en el establo; necesitan ser llevados al rastro y el establo ser limpiado. Quiza el Sr. Shuttleworth lo pueda hacer.

Sonido en Linux? Esta completamente roto; cada vez que veas artículos anunciando “Este es el año de Linux en el escritorio” por favor procede a abusar del autor hasta que te canses.

Digo esto como un usuario de Linux — tanto en casa como en el trabajo — y como alguien que empuja software libre encima de todo mundo. Supongo tendré que dejar de empujar la gente hacia Apple ahora.

## Linux Sound, or lack thereof

So there’s this article on the NYTimes about Ubuntu’s focus on reaching the Mainstream. It’s a pretty good read. But it won’t happen.

Why, you ask? Because of sound. You know, the thing that your brain processes as auditory input.

I won’t say much about it, since others have already said it far better than I could:

I’ve only tried to get a headset to work on my computer with Skype. Had to fiddle with settings for an hour before Skype worked the way it was supposed to. Mind you, this is a cheap-ass run-of-the-mill headphones-and-microphone headset without any controls; none of those nifty USB headsets for me because I know they do not work with my choice of operating system.

All of those APIs, sound servers, systems and daemons… they’re Augean cattle mucking up the stable, and they need to be slaughtered and the stable cleaned out. Perhaps Mr. Shuttleworth is up to the job.

Sound on Linux? It is completely broken; whenever you see articles announcing “This is the year of Linux on the desktop”, please proceed to abuse the author to no end.

I say this all as a Linux user — both at home and at work — and as someone who pushes open source software on everyone. Guess I’ll have to stop doing that and push people towards Apple instead.

## Direcciones IP estaticas en Ubuntu 8.10

Parece que no soy el único que ha tenido broncas con NetworkManager 0.7 en Ubuntu Intrepid Ibex.

Yo acabe por quitar NetworkManager por dos razones:

• Necesitaba que mis maquinas virtuales tuvieran acceso a la red local (con Host Networking) en VirtualBox.
• Los servidores DNS de mi ISP valen pa’ pura madre. Les gusta apuntarse el trafico entre si en un circulo vicioso a cada rato, dejando a todos sin una conexión al internet funcional.

Para configurar Host Networking me encontré un bonito tutorial en el wiki de Documentación de la Comunidad Ubuntu. Los conflictos comenzaron después, ya que note que mi conexión al internet se torno inestable y solamente reiniciando el sistema podía recuperar la conexión.

De ahí esta la situación con los nameservers de mi ISP(Telnor). Fallan por lo menos una vez a la semana y son lentos como la chingada, así que quería configurar mis alternos preferidos de OpenDNS. Lo malo fue que a NetworkManager no le parecía la idea y rehusaba aceptar una configuracion manual. Al tratar de declarar los nameservers manualmente, sobre-escribe el archivo /etc/resolv.conf cada vez que el sistema inicia.

Así que después de lidiar con estas patrañas por un par de días desinstale NetworkManager y puse mi solución en launchpad.

Tengo una configuración de red rara en la cual el módem DSL actúa como el servidor DHCP principal para computadoras conectadas con Ethernet y WiFi. Dado que alkhemy no tiene tarjeta WiFi, estoy usando mi router WRT54G(DD-WRT) como un puente inalambrico; conecto alkhemy al router via Ethernet, el router se conecta al módem DSL via WiFi, por lo cual no hay necesidad de que el sistema “mantenga viva una conexión a toda costa” (tomado del man page de NetworkManager). También tenia la duda de si las maquinas virtuales podrían conectarse a la red sin problemas y si el router podría lidiar con ellas sin darse un tiro; Me puedo saber satisfecho ya que no he tenido problemas después de tener esta configuración por una semana.

Ojala y se arreglen los problemas con NetworkManager mas pronto que tarde. No estoy seguro si otras distribuciones de Linux estan siendo afectadas por esto, pero si lo estan puede que el problema empeore. Ya esta llegando la hora en que Ubuntu tenga una edicion concentrandose en arreglar bichos en lugar de agregarle cosas nuevas. Pero yo que se.

## Ubuntu 8.10 Static IP addresses

It looks like I’m not the only one to have run into difficulties with NetworkManager 0.7 in Ubuntu Intrepid Ibex.

Myself I was forced to get rid of NetworkManager for two reasons:

• I needed my virtual machine instances to have Real Networking (better known as Host Networking) in VirtualBox.
• My ISP’s DNS servers suck. They like to point traffic to each other in an endless loop from time to time, leaving everyone without an internet connection.

To setup Host Networking I found a nice tutorial in the Community Ubuntu Documentation wiki. However, after that I noticed some strange stuff happening with my Internet connection, as all access would be lost and only a reboot would get the machine to go back online.

Then there’s the question of my ISP (Telnor) nameservers. They fail at least once a week and are slow as hell, so I wanted to configure my preferred alternates from OpenDNS. Problem was NetworkManager was having none of that, as it will rewrite /etc/resolv.conf on every single boot.

So after dealing with this nonsense for a couple of days I got rid of NetworkManager and posted my solution to launchpad.

I have a weird network setup, in which the DSL modem acts as the main DHCP server for both wired and wireless hosts. However, since alkhemy has no wireless card, I’m using my WRT54G(DD-WRT) router to act as a wireless bridge; I connect alkhemy to it via Ethernet, the router connects to the DSL modem via WiFi, so there’s no need for my computer to actively work on “keeping a connection alive at all costs” (from the NetworkManager man page) There was the question whether the virtual machines would be able to network and whether client router would be able to deal with them without barfing; I’m happy to say I haven’t encountered any issues after running everything for a week.

Hopefully someone will get around to fix these problems with NetworkManager sooner rather than later. I’m not sure if other Linux distributions are being affected by this, but if they are it’s going to get messy. It’s getting to be time Ubuntu had a release concentrating on bug-fixes rather than adding on features. But what do I know.

## De Snobs que se Creen Hippes y les gusta Linux

Over at Atijuanate, a metroblog based here in Tijuana:

No comprendo el afán de estos linuxeros por defender un modelo como lo es el software libre, el cual me impide a mi como programador que me mate mas de 5 años perfeccionando mis conocimientos en x o y lenguaje y en claro la lógica y modo de programación, el vender mi producto. O si afirman que puedo vender soporte e implementación pero solo si el cliente la necesita…
a quien en esta vida le gusta trabajar gratis??
Saben a quien!
a los linuxeros!!

Obviously I already went and left a few comments beginning with this one

## De Snobs que se Creen Hippes y les gusta Linux

En Atijuanate:

No comprendo el afán de estos linuxeros por defender un modelo como lo es el software libre, el cual me impide a mi como programador que me mate mas de 5 años perfeccionando mis conocimientos en x o y lenguaje y en claro la lógica y modo de programación, el vender mi producto. O si afirman que puedo vender soporte e implementación pero solo si el cliente la necesita…
a quien en esta vida le gusta trabajar gratis??
Saben a quien!
a los linuxeros!!

Obvio ya fui y le deje un comentario