RSSAmplifier

Blog

Denilson Sá

denilson.sa.nom.brRSS feed ↗47 posts

Latest 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. Getting the PipeWire node name For some configurations, you need to refer to the PipeWire node name (AKA the device name).…

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…

PipeWire is awesome!

Modern Linux distros are switching from PulseAudio to PipeWire , and I have to say: PipeWire is great! But what is PipeWire? It is a sound server that tries to combine most of the features from both JACK and PulseAudio , while also providing backwards-compatible APIs. Historically, professional audio applications on Linux were targeting the JACK sound server, while most applications for general…

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. This is NOT a guide on how you can get a job in the Netherlands. This is NOT a guide on how to start the process of moving to the Netherlands. Instead, this is a guide for people who just arrived (legally) in…

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 . Introduction Sometime in 2020, Mozilla launched their own VPN service on just six countries. On the following year,…

Getting rid of Disqus

I m removing Disqus from my website. Why? Well, keep reading… History I started blogging in 2005 ( Wayback Machine ). I wrote posts about my experience with Gentoo Linux , and posts about whatever subject I wanted to write and I wanted to share. Back then, I either had a 56K dial-up modem or had just upgraded to 256kbps ADSL . Facebook wasn t popular yet, laptops weren t popular yet, modern…

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: Project name , obviously. Project purpose . What is the problem it tries to solve? Who should use this project? Why would people use this project? Project overview . What…

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. It was originally written by me (Denilson Sá Maia) in February 2018, with some help from Alex Badarin . It was supposed to be turned into a talk/training for new (full-stack) developers at Booking.com,…

devcon.exe for Windows (and F.E.A.R. games)

devcon.exe is a command-line tool alternative to the Windows Device Manager. Version 5.2.3718.0, released on 2003-01-29, modification date from 2002-11-15, can be downloaded from Q311272 . Only available on ia64 and x86 architectures. It is very old, designed to work on Windows up to version 2003. Don t waste time trying this version. Version 6.1.7600.16385, modification date from 2010-02-08, is…

Finding out how gnome-keyring gets started on Lubuntu 15.04

This week I ve updated my Lubuntu 13.10 to 14.04 to 14.10 and finally to 15.04. Then 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 . I don t really understand why I need gnome-keyring dialog in my face when previously I could just type the passphrase at the terminal. (Feel free to enlighten…

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). One possible solution (or workaround) is to export all your contacts from Google Contacts into a CSV file ; import this file into Excel, OpenOffice, Google Spreadsheet, Python, Gvim…; modify the file in that tool; export an…

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 ). RetroAdapter ( Wayback Machine ) is an open-source project that uses an 8-bit AVR microcontroller (ATmega8 or ATmega168) to convert gamepads for old console video-games to USB. The list of compatible game controllers is huge, ranging from Atari 2600 to SEGA Dreamcast and Nintendo GameCube .…

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…

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 ( Wayback Machine ) programmer. Go to: part 1 , part 2 , part 2.1 ( video ), part 3 , part 4 ( video ), source-code . A little bit of history Back in…

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 . Thanks goes to Stig Hornang, who e-mailed me a few days ago. He said he spent two hours until he figured out it was wrong. Sorry about your time, Stig, but thank you very much for pointing it out! I copied the wrong pinout from a PDF ( local mirror ) that I found at some personal homepage ( Wayback Machine ).…

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. Go to: part 1 , part 2 , part 2.1 ( video ), part 3 , part 4 ( video ), source-code . Whoa! It has been a long time since my last part about 3 months! Anyway, let s finally put the firmware we wrote on part 3 into the microcontroller. The circuit ATmega8 s I/O…

Então é Natal...

Então é Natal… Lá lá lá láá láá lááááááá. Pá! Pá! Boom! Parararatatatatatata! Corre! Se abaixa! Se esconde que é tiro! Que neste Natal as únicas coisas mortas sejam o peru e o bacalhau na ceia natalina. Que no próximo ano… Bem, acho que nem preciso repetir, todos provavelmente compartilham do mesmo sentimento. Feliz Natal e muita paz para 2008!

(Not) moving from beryl to compiz-fusion

Description of my first contact with Compiz Fusion ( Wayback Machine ). As a former Beryl ( Wayback Machine ) 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. Lately, some gentoo developer has messed with…

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. Go to: part 1 , part 2 , part 2.1 ( video ), part 3 , part 4 ( video ), source-code . For this part I m going to write a “ Hello, world ” software for the ATmega8 microcontroller , which will make 4 LEDs…

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. Go to: part 1 , part 2 , part 2.1 ( video ), part 3 , part 4 ( video ), source-code . What is an AVR…

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 ( Wayback Machine ), 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. Go to: part 1 , part 2 ,…

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. This is only a supposition, don t think the information here is true, has happened or is going to happen. (but I guess most of us would…

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 . The issue: Flash videos are not played. I can try YouTube , Google Videos or any other…

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 . Recently, nvidia-drivers-100.14.09 has been marked stable in Gentoo . I looked at that and thought to myself: Wtf? What is this weird version number? Hum, maybe a whole new development branch?…

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. Problem 1: I can…

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: 176x220 pixels at 65536 colors LCD (specifications and reviews say it has 262144 colors, but AFAIK J2ME can only use 64K colors) Lithium battery (which is also recharged when you plug the USB cable) GSM, with support for internet connection using GPRS XHTML browser with SVG…

Hot News

This post talks about some really hot news. As you might already know, I live in Rio de Janeiro, a tropical city globally known for its beaches, its tourist spots, and its hotness. 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 ℃. Ok,…

Mundo animal

Vivemos num mundo animal , mesmo estando num dos maiores centros urbanos do Brasil. Veja por quê: Pegamos ônibus (em especial, os da linha 910 ou de qualquer linha da empresa Paranapuan ) ao lado de baratas … Dividimos as salas de aula da universidade com marimbondos … Almoçamos (no CT - Centro de Tecnologia) na companhia de aranhas (que às vezes descem até nós)… Divimos nosso lanche com moscas e…

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. 7 months since my previous try, now I have modular X.org 7.0 and Gentoo told me to update my nvidia drivers. It is a good time to try again.…

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. Ambos os produtos possuem objetivos similares, mas se comportam de formas um pouco diferentes. A Supervia afirma que seu produto é capaz de atender uma faixa maior de usuários: Nosso sistema está pronto para operar…

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. Hidden items at frame submenu See this forum post ( archive.org download ). In summary, frame submenu (from a right-click at document) does not have anymore…

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… When using nv driver, it correctly autodetects my…

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… Taking the long story (and conversation) short, he could stabilize his system by…

Kombi é open-source

Se você mora no Rio, pode pular este parágrafo. Se você não mora, gastarei algumas linhas explicando o contexto. Aqui, há centenas ou milhares de Kombis e vans fazendo transporte alternativo . Muitas delas fazem linhas parecidas (ou iguais) às linhas de ônibus. Outras, no entanto, fazem itinerários que nenhum outro ônibus faz. Na maior parte das vezes, a tarifa de kombis e vans é mais barata e o…

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. The behavior was equal to nvidia driver crashing: the display is frozen, but mouse still moves. A feel like using Windows: it is unstable, you don t know if it…

What is for you the most important feature in an opensource/free software game?

The Linux Game Tome ( Wayback Machine ) is holding the following poll: What is for you the most important feature in an opensource/free software game? graphics gameplay music originality multiplayer licence little details Unfortunately, it is not possible to select more than one answer. I think there is no one most important feature . All of them (or most of them) are equally important. A good…

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). First, I had only CUPS installed, and I was using some generic CUPS-HP-Deskjet driver . This was ok, until I tried to print some CD labels, and I found it was printed misaligned, and some milimeters smaller. After hours testing, and lots of paper… I found the solution: USE="cups…

Why Gentoo?

Today I found some pages about Gentoo, and about the arguments people use to explain why to use Gentoo: GENTOO is Rice ( Wayback Machine ) Mandrake Expatriate Syndrome ( Wayback Machine ) Gentoo forum thread about www.funroll-loops.org So, I stopped for a while and asked to myself: Why do I use Gentoo? History before Gentoo My first experience with Linux was with some old Red Hat distro. Really…

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. My hardware is Pentium III 800MHz on Asus CUV4X board (with Via chipset and AGP 4x) and nVidia GeForce FX 5500. My current system is a Gentoo /x86 stable , using vanilla-kernel 2.6.14.2. Just as sidenote and for comparison, nVidia driver…

Is Java portable?

What about Java 1.4 for PPC? Java? This platform independent thing? Well.. Sun doesn t provide any binaries for PPC-Linux :-p From Slackintosh ( Wayback Machine ) FAQ: http://workaround.ch/faq.html#java ( Wayback Machine )

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 ) Now I have alsa, alsa works, I can have full 5.1 surround. I also have CUPS working. Configuring my USB printer in CUPS was a piece of cake, I had no problems.…

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. Once, everything just worked. Once, I was happy and didn t notice. Today, I have Gentoo, with 2.6 kernel, X.org 6.8.2 and ALSA…

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. Apache works, PHP works, MySQL is installed but I m not using it… After some trouble, I could modify mplayer ebuild to make it play realmedia files without installing realplayer (see my forum post ). There are some old bug reports that nobody bothered…

Gentoo Install - part 3 - The nVidia strikes back

Damn Gentoo! Ok, my Gentoo system appears to work. X can startup (using the plain NV driver), I do have Opera (why Opera depends on OpenMotif? huh? plugin interface? ok), screen, fluxbox, vim, mirrorselect… Of course I wanted to enable nVidia drivers . I have a GeForce FX 5500 videocard, with two monitors, so I need nvidia drivers to enable dual-display, as well as 3D acceleration. Ok, I ve once…

Gentoo Install - part 2 - Stage3

This time, I installed stage3. I rm -rf the old incomplete stage1 install and started the stage3. Stage3 is a lot easier than stage1, since everything is already done. I just unpacked the stage3 tarball, then unpacked portage snapshot, then edited some config files at /etc, and it was almost done. I ve then emerged some things (one of the first things was vim ), and also configured the Linux 2.6…

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. Alguns trechos engraçados: (cara de Java) : Java é portável. (mago do Perl) : Java é portável? Não, Java é insuportável! (mago de Perl) : Na Motorola, onde eu trabalho (ou trabalhei),…

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. Bad thought Well, not really bad, but not good. Two weeks ago, I started a Gentoo installation. I was installing it without shutting down my current Slackware system. I…