Archive of blog posts

  • » Real-world examples of PipeWire configuration“In this post, I’m collecting several ideas and PipeWire solutions to real-world audio issues. Some of them are certainly convoluted, and a better solution could be to buy high-end expensive gear; but here I’m having practical usable solutions for a Linux desktop computer.”
  • » Multiple ports simultaneously in PipeWire“If you have Bluetooth or USB headsets connected to your computer, they will show up as a separate sound devices next to your built-in audio chip. They even have their own volume sliders, and it’s trivial to change which should be the default device. However, the same cannot be said about the built-in headphone jack and the connected HDMI/DisplayPort monitors. Toggling between those is hidden away in a confusing drop-down menu. Why can’t they behave just like the headsets I have just mentioned?”
  • » PipeWire is awesome!“Modern Linux distros are switching from PulseAudio to PipeWire, and I have to say: PipeWire is great!”
  • » Moving to the Netherlands“This is a guide for expats moving to the Netherlands. I wrote it myself, with the help of several colleagues, when I moved over here, many years ago, and people found it extremely helpful.”
  • » How to use MozWire on a headless Raspberry Pi“In this post, I’m sharing some notes on how to get Mozilla VPN running on a headless Raspberry Pi. In fact, these instructions generate the necessary WireGuard configuration files that can be used on any device, even those not supported by the official Mozilla VPN GUI application.”
  • » Getting rid of Disqus“I’m removing Disqus from my website. Why? Well, keep reading…”
  • » What do I expect from documentation?“Based on my experience looking/installing/running/modifying open-source projects at my own computer, and my experience working on code at my employer, I came up with the following expectations for a README file for any project:”
  • » How browsers work“This is a very concise introduction to how browsers work, aimed to let people understand what is a web browser, what are the main technologies involved in the browser, and how it all fits together.”
  • » devcon.exe for Windows (and F.E.A.R. games)“devcon.exe is a command-line tool alternative to the Windows Device Manager.”
  • » Finding out how gnome-keyring gets started on Lubuntu 15.04“This week I noticed something strange, that I had never seen before: a *gnome-keyring* dialog showing up whenever I was asked to provide the passphrase for my ssh key.”
  • » Bulk-editing your Google Contact list“Let’s say you are a programmer/hacker/geek like me. Let’s say you want to edit multiple contacts from your Google contact list (the same one shared by Gmail and Android).”
  • » I built a RetroAdapter“A few weeks ago, I did what I wanted to do for a long time: I built my own RetroAdapter (Wayback Machine).”
  • » USB HID absolute pointing device using ATmega8 and a magnetometer“In the last November, I finally finished my college! I’ve got a Bachelor’s Degree in Computer Science by UFRJ (Universidade Federal do Rio de Janeiro). And for my senior project (or final graduating project, or TCC - Trabalho de Conclusão de Curso, or PFC - Projeto Final de Curso) I chose to build a USB device that could control the mouse pointer, using an AVR ATmega8 microcontroller and a magnetometer.”
  • » First contact with ATmega8 microcontroller - part 2.1“Almost 4 years later, I started using AVR microcontrollers again. However, today it is difficult to find a computer that has a _parallel port_, and thus I needed to revisit this topic of AVR programmers. And I end up building (and buying) the USBasp programmer.”
  • » First contact with ATmega8 microcontroller - correction“At part 2 of this series of posts, I’ve posted the wrong pinout for 6-pin ISP connector.”
  • » First contact with ATmega8 microcontroller - part 4“In this fourth part, I’m going to finally mount a circuit using the ATmega8 microcontroller and program it with the firmware we wrote.”
  • » Então é Natal...“Então é Natal… Lá lá lá láá láá lááááááá.”
  • » (Not) moving from beryl to compiz-fusion“Description of my first contact with Compiz Fusion. As a former Beryl user, I can compare them and have an opinion about which one of them is best (or which one I like more). Read this post to discover all bugs and annoyances I found in Compiz Fusion, and if I've really moved to it or if I went back to Beryl.”
  • » First contact with ATmega8 microcontroller - part 3“Now, I’m going to leave the hardware parts alone and start working with the software. At the end of this part, we will have our firmware ready to be written (programmed) into the microcontroller.”
  • » First contact with ATmega8 microcontroller - part 2“In this second part, I’m going to build an AVR programmer to be connected to the PC’s parallel port. I’m trying to summarize here all information I found spread all over the web. I believe this post is worth reading even if you don’t have a parallel port, as it describes how AVR programming works.”
  • » First contact with ATmega8 microcontroller - part 1“Last week I bought an ATmega8 microcontroller. I plan to use it to build an arcade USB Joystick, but first I need to understand how it works and how to use it. This and the following posts are an attempt to document my first contact with this microcontroller and to describe all needed hardware and software so you can start using a microcontroller too.”
  • » What if nVidia had an open source driver?“The Free Software and Open Source community is always asking for hardware manufacturers to write free and open source software (from now on called FOSS) drivers. So, let’s try to guess what would happen if nVidia decided to release the graphics drivers as FOSS.”
  • » Playing Flash videos in Opera under Gentoo Linux“This post is actually an adaptation of a bug report I submitted to Opera Software, based on my own experience and on what I learnt from Gentoo Bug 127200 (netscape-flash misbehaves in Opera). I think this information is too valuable to be hidden at internal Opera Software bug tracker and at Gentoo bugzilla.”
  • » nVidia (driver) strikes back (again)“This is not the first time I post here a problem related to nVidia binary driver on my system. Neither this is the second time. Neither the third… Well, I could even rename my blog to “Crazy nVidia bugs”.”
  • » Poor interface design“I’m not (yet) a Java developer. In fact, I hate Java. But I started to learn J2ME to be able to write programs for cell phones (now I have a phone that has good J2ME support, large memory, somewhat fast processor…). So, I installed NetBeans 5.5 and the NetBeans Mobility kit. Some people prefer Eclipse, some prefer NetBeans. Since I never really used any of them, I tried NetBeans.”
  • » What I don't like on K750i“This month I bought a Sony Ericsson K750i phone (Wayback Machine). It is a very good phone, with the following features:”
  • » Hot News“Last days were really hot. On December 19th, at 22:21, it was 32 ℃ inside my bedroom! On December 20th, at 20:27, it was even hotter: 33 ℃. Outside, during the day, some street thermometers showed more than 40 ℃.”
  • » Mundo animal“Vivemos num mundo animal, mesmo estando num dos maiores centros urbanos do Brasil. Veja por quê:”
  • » NVIDIA = No VIDeo for vIA“If you read this blog, you might remember how many times I tried to make nvidia driver work with X.org, without freezing it. The solution was disable AGP support and wait until X.org 7 was released, since I read somewhere that nVidia sent some patches to it.”
  • » Metrorio e Supervia lançam produtos baseados na plataforma Rails“A Metrorio e a Supervia, empresas responsáveis pelo transporte metroviário e ferroviário do Rio de Janeiro, anunciaram o lançamento de seus produtos que rodam sobre a plataforma Rails.”
  • » Opera 9 - bad things…“Every new major Opera version is the same thing: Opera breaks some expected or well-accepted behavior, and require us to either get used to it (until next major version, of course) or fiddle with different files to get back the old behavior.”
  • » nVidia versus fonts!“Well, looks like disabling AGP resulted in a stable system. No crashes so far (since yesterday).However, as soon as I started X with nvidia driver, I could notice something wrong… Fonts of most applications were smaller! Both Psi (QT application) and X-Chat (GTK application) displayed fonts way too small. So, I started hunting the cause of this…”
  • » nVidia, one more try“Last night, I came upon Shirakawasuna2 at #gentoo channel. He was asking for help with X.org lock-ups with via+nvidia+agp. I told him I had the same problem, and I was using nv driver. He told me he could “stabilize” using the nvidia driver. Then I asked how, and start writing one more chapter of my nvidia series…”
  • » Kombi é open-source“Meu objetivo neste post não é defender ou atacar as Kombis, nem apontar seus defeitos ou vantagens. Meu objetivo é abordar as diversas características que tenho observado que me fazem concluir que as Kombis são open-source.”
  • » X.org crashes. Yes, it does.“Some hours ago, I was using k3b, xterm and firefox. The X.org is configured to use nv driver, since nvidia crashes too often. Then, for the first time since I started using nv driver (and I’ve been using it for some months), the X froze.”
  • » What is for you the most important feature in an opensource/free software game?“The Linux Game Tome is holding the following poll: “What is for you the most important feature in an opensource/free software game?” Unfortunately, it is not possible to select more than one answer.”
  • » Printing to a HP printer with CUPS“This is a quick post just to document how I configured my HP 930C printer to print correctly (or almost correctly).”
  • » Why Gentoo?“Today I found some pages about Gentoo and about the arguments people use to explain why to use Gentoo, so I stopped for a while and asked to myself: Why do I use Gentoo?”
  • » The Failed Gentoo Linux nVidia Guide“In this guide you will learn how to try to install nVidia graphics drivers for Linux/x86. You will also learn some of the various ways the installation may fail.”
  • » Is Java portable?“What about Java 1.4 for PPC? This platform independent thing? Well..”
  • » Isn't it nice when things work?“I’ve updated my kernel to latest (2.6.14.2) and also disabled in-kernel alsa drivers to install external alsa drivers (from alsa-driver package). This solved my problem with deadlock. (just in case someone wanna look at bug report: 115333)”
  • » Gentoo, the feature-less system“Once I had Slackware 9.0, with 2.4 kernel, XFree86 4.3 and OSS (Open Sound System, also known as Old Sound System). Once I could listen sound and music, I could run OpenGL applications and games with decent framerates, I could use a second monitor on my GeForce 5500 FX.”
  • » Gentoo Install - part 4 - The working system“Ok, my Gentoo system is now working, and I’m using it. nVidia driver did not work, I am using “generic” nv. I must remember to submit a bug report.”
  • » Gentoo Install - part 3 - The nVidia strikes back“Damn Gentoo!”
  • » Gentoo Install - part 2 - Stage3“This time, I installed stage3. I rm -rf the old incomplete stage1 install and started the stage3.”
  • » 3ª Semana de Software Livre“No último dia da 3ª Semana de Software Livre, realizada na UniRio, houve uma “mesa de linguagens de programação”. Muito divertido ver Shell Script, Perl (defendida pelo “mago” de perl), Java e Python na mesma mesa.”
  • » Gentoo Install - part 1 - Stage1“My computer is running Slackware 9.0. It is old, and almost all libraries need updates. Since I don’t want to update my entire system “by hand”, I thought that installing Gentoo would be easier, faster and would require less work.”