Live Desktop Streaming via DLNA on GNU/Linux

TWiT and the Ubuntu terminal on a TV set via DLNA

Many modern TVs (and set-top boxes, gaming consoles, etc.) support DLNA streaming. Suppose you have a PC that stores all your music, downloaded podcasts, video podcasts, photos, and so on. You can run some DLNA media server software on your PC and stream your entire media collection to your TV over your home network. No more carrying around USB sticks, it’s all in your home cloud.

On GNU/Linux, I am using MediaTomb as my DLNA server. It’s nothing fancy (it’s a file server, after all), and it just works.

Okay, this takes care of media files stored on your PC. But can we do more? Is it possible to stream a live capture of your desktop to the TV?

Let’s say you’re watching a Flash video in your browser, and there’s no way to download the video file. Or, you’re watching a live event being streamed via Flash or whatever. It would be kinda cool to be able to stream that to your TV via DLNA. And it’s possible—not trivial, mind you, but I’ve seen it working at least once…

. . . → Read More

SSL Certificate Error With Gwibber And identi.ca on Ubuntu

UPDATE: The problem has been fixed on identi.ca’s side. Maybe the workaround will be useful to others in some other context at some other time. I will also remove the certificate mentioned below from my system. It won’t be needed any longer, and who knows what nasty side effects it might have going forward…

I ran into this problem today where Gwibber (the micro-blogging client) on Ubuntu would not work with identi.ca anymore. The bug report referred to the log file ~/.xsession-errors, which contained this message:

Traceback (most recent call last):
File “/usr/lib/python2.6/dist-packages/gwibber/microblog/network.py”, line 53, in __init__
self.curl.perform()
error: (60, ‘server certificate verification failed. CAfile: /etc/ssl/certs/ca-certificates.crt CRLfile: none’)

. . . → Read More

Operating System Usage Statistics

Graziano Sorbaioli pointed out a link to the w3schools.com OS Platform Statistics. The data from their web server access logs shows which operating systems visitors to w3schools.com use.

I wanted to look at the data graphically, so I created two OpenOffice.org charts.

OS Platform Statistics

Operating System Shares

OS Platform Statistics - Yearly Averages

OS Platform Statistics - Yearly averages

Not surprisingly, around 90% of visitors run Windows. But Windows usage is declining slowly, from 93% in 2003 down to 88% in 2010. Mac and Linux* are both growing slowly but steadily (Mac faster than Linux). All other operating systems account for only 0.67%.

. . . → Read More

FSCONS 2010 Notes

FSCONS 2010 poster

This year I was at FSCONS, the Free Society Conference and Nordic Summit in Göteborg. First and foremost, this was an opportunity for me to meet some of the GNU hackers I had met earlier this year at GUADEC. The conference itself covered a wide variety of topics. Unlike GUADEC, which is basically all about a single (albeit large) piece of software, FSCONS brings together technology, creative minds, social sciences, philosophy—I never heard people discussing Marshall McLuhan over a beer at 3 a.m. anywhere else.

These are my notes from the GNU Get-Together and from the FSCONS conference. There was a lot more going on there that I won’t mention. . . . → Read More

Building Debug Versions from Source Packages

To build a debug version of exactly the package that is installed in your Debian-based GNU/Linux distribution (tested on Ubuntu 10.10):

apt-get source rhythmbox

This does not require “root” access. It will simply download the source package to the current working directory.

To build the package, you might need developer libraries of dependency packages:

sudo apt-get build-dep rhythmbox

To configure the package so that it builds a debug version that does not replace the installed package, I used:

./autogen.sh --prefix=/home/devel/rhythmbox-0.13.1/install CFLAGS="-g -O0"

All that is left to do is run make:

make -j 4
make -j 4 install

Stitching Panoramas With Hugin and Some GIMP Post-Processing

Here’s how I created the panoramas that I posted to my GUADEC 2010 photo album (on Flickr and on Picasa).

I used the Hugin panorama photo stitcher and did some post-processing using GIMP. Hugin should be available in the repositories of your GNU/Linux distro, and it’s dead simple to use.

These are four pictures I took at the intersection of Grote Halstraat, Hoogstraat, and Gravenstraat in The Hague with a camera phone. I made sure that the pictures have enough overlap. (The Hugin tutorial recommends 20% to 30% overlap.)

. . . → Read More

GNU Automake By Example

Originally published: June 1, 2005

Table of Contents

  1. Abstract
  2. A Minimal Project
  3. Editing Automake-based Projects with KDevelop
  4. Adding Doxygen Support
  5. A More Complex Example
  6. Topics Not Covered
  7. Links

Abstract

This article presents several simple Automake/Autoconf-based projects. I assume that you know what Automake, Autoconf, and configure are, and that you know how to install a software package from sources (i.e., you know how to invoke "configure & make & make install"). (If you don’t, you can still follow the instructions to create a very small project to play around with.) This article does not contain lengthy explanations or detailed background information. Rather, I present a few examples that (hopefully) get the ideas across.

Some of the topics for which examples are presented:

  • Doxygen support
  • Multiple subdirectories
  • Flex/Bison support
  • Libtool Convenience libraries
  • KDevelop Automake Manager

. . . → Read More

Building SWIG Python Extensions on GNU/Linux

Originally published: May 27, 2005

Table of Contents

  1. Abstract
  2. Building Manually on the Command Line
  3. Adding SWIG to Autoconf
  4. Adding SWIG to Automake
  5. An Example Project

Abstract

In the article Python Extensions In C++ Using SWIG, I describe how to extend Python with C++ code. That article also contains instructions for building SWIG extension DLLs on Windows. This article contains instructions for using GNU Automake and Autoconf to build SWIG extensions as shared objects on GNU/Linux.

. . . → Read More

Ads