Sound Juicer "I Don't Know Why She's Ridin' So High" 2.13.6
Sound Juicer "I Don't Know Why She's Ridin' So High" 2.13.6 is out. Tarballs are available on burtonini.com, or from the GNOME FTP servers. Yes, this is too late for the 2.13 RC, but I thought I best get the package out anyway. Bug fixes:
- Rocking new icon from Lapo Calamandrei
- UI Review attack on Preferences dialog
- Don't cache metadata, it's a pain
- Change the sample metadata to a real song
- Show file extension in sample filename
- Use × rather than x in progress bar
- Untranslate strings that should not be translated
Translators: Ankit Patel (gu), Clytie Siddall (vi), Francisco Javier F. Serrador (es), Gabor Kelemen (hu), Ignacio Casal Quinteiro (gl), Ilkka Tuohela (fi), Iñaki Larrañaga (eu), Kjartan Maraas (nb), Kjartan Maraas (no), Kostas Papadimas (el), Lasse Bang Mikkelsen (da), Leonid Kanter (ru), Miloslav Trmac (cs), Priit Laes (et), Raphael Higino (pt_BR), Rhys Jones (cy), Rostislav Raykov (bg), Satoru SATOH (ja), Theppitak Karoonboonyanan (th), Tino Meinen (nl), Vladimer SIchinava (ka), Woodman Tuen (zh_HK), Woodman Tuen (zh_TW), Žygimantas Beručka (lt).
GTK+ on PalmOS Screenies
Scroll down a bit here and there are some photos of GTK+ running on a prototype Palm device. Very cool, hopefully they get the development kits out this year.
It should also be known that Richard Purdie is currently my hero. I can't say why at the moment, you'll have to come to FOSDEM to find out why!
NP: Modus Operandi, Photek
Contacts in Debian
Hopefully Chris will get around to making a 0.2 release soon, I've packaged 0.1 as it's known to work, but the repository contains some kick-arse improvements.
I have a ThinkPad T40p, with an ATI Radeon inside. It has got a nice shiny TV-out plug on the side, and I have a short cable that ends in a composite video plug. My TV has a composite video socket on the front.
When I press Fn-F7 (switch display), nothing appears on the TV. I'm expecting lots of pain to get this working: so far I am running fglrx and have the following line in xorg.conf:
Section "Device" Identifier "ATI Graphics Adapter 0" Driver "fglrx" Option "VideoOverlay" "on" Option "OpenGLOverlay" "off" Option "DesktopSetup" "clone" EndSection
Anyone know the magic to make this actually work?
NP: Dreaming Wide Awake, Lizz Wright
Sometimes I Worry
Sometimes I worry about the mental state of Mallum. Under continued pressure, I'm caving in to his demands. Although I refuse to include the <marquee> tag.
Let The Battle Commence
AIGLX is very, very interesting. I think this is a superior solution to the current Novell hack-fest (Xegl is where the love is but that doesn't work at all, and Xglx is just so sick) that I'm very interested in having a play with this.
As Mallum said, the Great 2006 Novell vs Red Hat War Of The Eye Candy has started. The the battle commence!
NP: Songs In The Key Of Life (disc 2, Stevie Wonder
Default Location in GTK+ File Chooser
Today I finally got annoyed enough with Ubuntu's GTK+ defaulting my file choosers to $HOME/Documents rather than $HOME. I can see how this would be useful, but Documents contains a few files, whereas I generally want to get into ~/Pictures, or ~/Programming. Luckily sebuild saves the day, by telling me about GTK_DEFAULT_FILECHOOSER_DIR. One quick export later:
And voilà, it works. Now please can the comments section of this
post not turn into a
new GTK file chooser sucks arse d000dz old one
r0xkkz. You try explaining to a non-geek why
folder is .., and why . is in the folder list at
NP: Songs In The Key Of Life, Stevie Wonder
As we are with Henry every day, we didn't really notice him turn from this:
into this in the space of two months:
Time for a new bed soon I guess!
NP: Ray Of Light, Madonna
Matthew Garrett was briefly my hero today (taking over from Iain Holmes) for uploading into Dapper xserver-xgl and Compiz. Very nice it is too, but it's a bit too crashy on my laptop for any real work.
Shortly afterwards he was replaced by Lapo Calamandrei, who told me he was working on some new Sound Juicer artwork if I was interested. Hell yes, I said, and it turns out he has managed to draw exactly what I wanted the Sound Juicer icon to be, several years ago. He rules.
NP: Wish You Were Here, Pink Floyd
More Avahi Love
Today's Avahi Love posting covers publishing SFTP servers. My NAS box runs SSH, so I can use the ssh: method in gnome-vfs to browse the filesystem (it uses SFTP). The magic service file is:
<?xml version="1.0" standalone='no'?> <service-group> <name replace-wildcards="yes">Remote Files on %h</name> <service> <type>_sftp-ssh._tcp</type> <port>22</port> </service> </service-group>
Restart Avahi and then with a suitable Avahi-enabled gnome-vfs, there will be entries in Places → Network Servers for each machine that file is installed on. Kick arse!
Why I Don't Use GnomeFiles
- No programmatic way of uploading new versions. Freshmeat has a XML-RPC interface and sample implementation, freshmeat-submit. This means I could integrate posting new versions into my make release script, which also uploads source tarballs to ftp.gnome.org and puts the latest DOAP file on burtonini.com. Ideally GnomeFiles will let me specify a DOAP URL and the server will fetch it regularly, updating the information when it changes.
- When adding a new version I need to fill in the download location field from scratch. For every Sound Juicer release this is going to look like http://ftp.gnome.org/pub/gnome/source/sound-juicer/2.[something]/sound-juicer-2.[something].tar.gz. It's a good assumption that if one version was at some URL, the next version will be at a very similar URL, so why not pre-fill that field with the previous version's URL? Freshmeat does this, and it turns typing in a long URL into changing a single number.
- I need to fill in the file size of the file at the URL. Why can't the server do that? If the download is over HTTP it could do a HEAD request and extract the Content-Length header.
- No support for branches. There are two branches of Sound Juicer development at any moment: stable and development. I have to pick one of these to publish, so am either publishing only the stable release, or the development releases. People who want to know about the other releases can't find this information out.
- This one is petty, but it bugged me. Description of the file to download eg. "Binary" or "gnomefiles.org Server". One of those is a description of the file, the other is a description of the site.
NP: Black Diamond, Angie Stone
Sound Juicer "For All Of These Simple Things And Much More" 2.13.5
- Enable Musicbrainz tagging with GStreamer 0.10.3
- Dutch manual (Tino Meinen)
- Fix build with GStreamer 0.10.3
- Disable Select All when there is no disc inserted
- Use GnomeProgram, the help button uses it
- Ignore unknown options instead of critically aborting
- Remove unused variables (Ryan Lortie)
Translators: Priit Laes (et), Žygimantas Beručka (lt)
ZeroConf Bookmarks in Epiphany
Yesterday I noticed that Epiphany in Ubuntu (and probably Debian too) is now build with Zeroconf support, which means it will detect any web sites exported over Zeroconf and add them to the bookmarks.
This totally rocks, as instead of having a number of bookmarks for various administration pages on my machines, the machines can export them over Zeroconf and when I am at home and those machines are on, they'll appear magically.
The first step to having Zeroconf enlightenment is to ensure avahi-daemon is installed on all machines. It doesn't matter if there are some machines that it cannot be installed on (i.e. router running embedded software), as other machines can publish their name and services on their behalf.
The first service I published is the web-based admin pages for my printer. The printer is connected to a small server called Melchett (a Buffalo LinkStation) which is running CUPS. By creating /etc/avahi/services/cups.service on Melchett with the following contents, the web site is published:
<?xml version="1.0" standalone='no'?> <!DOCTYPE service-group SYSTEM "avahi-service.dtd"> <service-group> <name>Epson Stylus Photo R220 Admin</name> <service> <type>_http._tcp</type> <port>631</port> <txt-record>path=/printers/epson-stylus-photo-r220</txt-record> </service> </service-group>
Each .service file in /etc/avahi/services defines a group of services. A group has a name, and a set of services. Each service has a number of properties:
- Specifies what the type of the service is (_http._tcp is HTTP over TCP). There is a canonical list of types available. This is a required element.
- What port the service is listening on. This is a required element, there is no default port 80 for _http._tcp services.
- Text Record
- This sets arbitary key-value pairs, which are interpreted on a per-service manner. For _http._tcp services the valid keys are u (username), p (password) and path.
There are also domain-name and host-name properties, but these are not used in this service description as the service is on the local machine.
In summary, you can see that I have specified that there is a web page accessible via HTTP on this machine, available on port 631 at the path /printers/epson-stylus-photo-r220. When other machines search the network for web pages they'll find this service entry (with the hostname properties filled in by Avahi), and generate the URL http://melchett.local:631/printers/epson-stylus-photo-r220 A quick pop into Epiphany shows that this is indeed the case, there is now a Local Sites category in the bookmarks containing Epson Stylus Photo R220 Admin.
There is one other thing I need to explain: how to publish services on behalf of other machines. Until this afternoon this required something to run avahi-publish-address to give the machine a Zeroconf name, but this afternnon Trent committed static name mapping to Avahi. When this is in a released version, I'll continue this article.
Oh Dear Lord
It looks like someone thought, "Hey, some people like Muine and some other people like Rhythmbox. Let's glue them together!". Please make it stop.
Update: apparently people think I'm mocking the author. Yeah, maybe a little. However, there are some serious cracky features in there, which I personally don't like, and as this is a personal blog this is where I get to say that sort of thing. Of course there is a hell of a lot of effort in this program (albeit in Python so its easier to get stuff working), but why is this another program?
We already have music players. If I only count the blessed and pratically-blessed players, there is Totem, Rhythmbox and Muine, all with different UI designs. The author of Listen must have at least partially liked one of those (from the screenshots he liked the playlist of Muine but the overall design of Rhythmbox) and then worked on one of those, say adding a pane to Rhythmbox to do what he wanted instead of duplicating large amounts of non-trivial code. It's likely that the result of this would look nothing like Listen, as I still firmly believe that it is ugly.
Of course what he does in his time is his choice and none of my business, so if he wants to write another music player he can, but if someone wants to make a real contribution to the community they should interact with the community in the first place. Otherwise it's just a pet project and if it duplicates existing programs, will likely remain a pet project. Maybe this comes down to centralised source code verses distributed source code (CVS vs Arch), but I doubt it. Downloading a tarball to start patching is easy, and for most people creating an Arch branch isn't exactly trivial.
Update 2: This is a very amusing open letter.
War On Abstract Concepts
From today's Snowmail (Jon Snow is my personal hero by the way):
We must also though note that in a poll today, almost half of Americans said they would approve of a war with Iran tomorrow.
Oh dear God, Really, I'm lost for words. An expanded article will follow when I stop thinking "but...".
NP: Best Of, Otis Redding
Reminded by Christian's blog about the positive experience with Virgin Radio's technical people, I popped along to their streaming site to see if they had read the email I sent them last week. Indeed they have, as they now list Totem as a recommended player on Linux.
Yay Virgin Radio! Now if they stopped playing the same damn songs over and over...
NP: Music For The Mature B-Boy, DJ Format