Archive for the ‘software’ Category

Fun with Precompiled Binaries (Or, Why I Recompile So Many Things)

July 27, 2011

I often note that I find things in binary packages that irritate me. Sometimes it’s too much nonsense compiled in so that installation of a small utility requires massive dependencies to install. This means not just a lot of extra stuff taking up hard drive space, it means more packages that get updated and other inconveniences.

Sometimes I also notice little things that make me go hmmm. Today I was playing around with mocp, a curses-based server-client music program. There’s not yet a package for *el6 so I compiled it myself. I thought I’d hit up all the right things so that it would stream and play all common music codecs. Everything seemed fine with mp3, ogg-vorbis, and even an ASX stream. Then I tried an AAC stream and found I had more work to do.

No big deal. I searched to find out what I was missing. I found a suggestion that I should build it –without-aac (overriding the internal AAC decoder) so that AAC would be handled by the ffmpeg plugin. I tried that and it didn’t work.

So I decided to double check my ffmpeg version, which was installed from rpmforge. While it had faad and faac support enabled, I found something else that seemed a bit weird.

I know, I know. It’ll still work on other CPUs but it’s optimized for Intel Atom. Why? I’m not using this on my dual thread netbook, it’s on a dual core laptop. It could’ve (should’ve?) been compiled with -mtune=generic.

It’s stuff like this that drives me nuts and makes me start recompiling things or install something that I can optimize for my own use if the packaging (indiscriminately!) includes optimizations that suit particular hardware rather than generic. I thought that was the idea of pre-packaging binaries: so they could be used by a wide variety of common users.

For what it’s worth, the spec says:

Description: FFmpeg is a very fast video and audio converter. It can also grab
           : from a live audio/video source.
           : The command line interface is designed to be intuitive, in the
           : sense that ffmpeg tries to figure out all the parameters, when
           : possible. You have usually to give only the target bitrate you
           : want. FFmpeg can also convert from any sample rate to any other,
           : and resize video on the fly with a high quality polyphase filter.
           :
           : Available rpmbuild rebuild options :
           : --without : lame vorbis theora faad faac gsm xvid x264 a52dec
           : altivec

So it has faad/faac enabled. Should’ve worked, no?

I checked version information against what I have on my older laptop running Sabayon (with dwm). No extra c flags noted in the ffmpeg -version output but I’ll double-check that tomorrow:

ffmpeg version 0.7.1, Copyright (c) 2000-2011 the FFmpeg developers
  built on Jun 30 2011 12:51:22 with gcc 4.5.2
  configuration: --prefix=/usr --libdir=/usr/lib --shlibdir=/usr/lib \
  --mandir=/usr/share/man --enable-shared --cc=i686-pc-linux-gnu-gcc

I still didn’t get AAC working on m *el6 laptop with the ffmpeg-devel package from rpmforge, or even when disabling it and building against the -devel packages for faad/faac. I’ll mess with it again tomorrow.

By the way, with all the -devel packages installed and all the compiling I end up doing, I wonder why I don’t just install something that has the relevant headers (Slackware) or that I can optimize and set up the right way — my way — from the start (Gentoo). Days like this, I wonder if the multi-year support of the EL clones is really all it’s cracked up to be. In fairness, though, we’re talking about a third-party repository and not stuff in the base which seems to be put together with more care and diligence. Maybe my lesson is to build my own packages for things not provided in the CentOS/SL repositories; that would solve not only this kind of issue but conflicts when a third-party repository has a more recent version number of something provided in the base.

Advertisements

A little diversion on emacs and audio

February 11, 2010

The abridged version of Doug McIlroy’s summary of the Unix philosophy is usually given as, “Write programs that do one thing and do it well.” As we all know, GNU’s Not Unix. Accordingly, GNU doesn’t really live up to this Unix philosophy stuff. Neither does GNU software.

Case in point: GNU emass emacs, the bloated editor-turned-snakeoil-cureall.

Don’t go away, I’m not going off on an anti-emacs rant. Why would I? I use it probably more than any other application other than my browser. But I’m also not deluding myself that it’s as massively anti-Unix as an application can be. A more Unix approach would’ve been what you see in the BSDs with simple little programs kind of gluing the whole thing together. The GNU approach builds and builds and builds so that things sometimes seem much more convoluted — and less elegant — than maybe they should be. But hey, it’s free as in beer and freedom.

GNU emacs doesn’t do just one thing, and it probably doesn’t do very many things well (at least for casual computer users). Sure, it’s a powerful text editor. But it’s also become a catch-all for all kinds of uses. It’s the proverbial kitchen sink. It’s a text editor, file manager, compiler, etc., and comes with so many tools that many other applications aren’t necessary if someone actually wanted to go all Thoreau and trim their use down to one application. I’ve written before that I’m a big fan of org-mode, which I use for everything from scheduling to producing quick formatted documents from an outline (my DSL hard drive page was formatted in org-mode; the HTML version looks better on my own server than on WordPress.com’s because I had to remove most of the styling and formatting). I also use a variety of other modes for various markup languages and for creating documents.

One can also add on any of the many bytes of elisp available from others, or write something from scratch. I’ve gone that third-party route with mew (and wanderlust) — even though emacs already comes with other e-mail user agents — and weblogger.el for posting to wordpress. I’ve also written and found other things, including interfaces to other programs. Some of these, like a mode to interact with gnuplot, have been very useful for work. Others further keep me focused within emacs so I don’t even have to leave it to do something. Or is it anything?

I decided that I wanted something that would give me more liberty with my music collection and with streaming audio, so I installed mpd (music player daemon). I’ve used it before and appreciate its simplicity and ability to be configured as I see fit. Like many other Unix-oriented programs, it requires another program (client) to function. I first installed mpc, which suits me just fine since I’d been using mocp (music on console) basically as a command line program; even though mocp can be run via its curses interface, I think it gets in the way and is just too clunky to use — it’s much easier to run mocp via various aliases (or even menu entries as I showed once before).

Back to emacs — could I control mpd within emacs? Of course. There are a few options. I first did the quickest: execute shell commands (mpc) from within emacs. Then I thought about adding MIME associations in dired, but that would’ve taken more time than I wanted to spend (especially with setting up various options for adding something to a playlist, playing immediately, etc., and that still did nothing to provide an immediate control to pause, stop, play, next, etc.). I decided to look around and I found something that appealed to me, and it’s called mingus.

I downloaded the code, set it up in my .emacs, and voila. It immediately showed my streaming audio in the status bar. I looked at its online help and stopped the current stream. I’d already set up in a playlist with three jazz podcasts I downloaded the other day. I decided to load that playlist and select a track.

I have a few things to tweak with respect to mpd-related directories but so far so good. Add music and podcasts to yet another thing I’m doing and/or controlling from within emacs. You average Distrowatch readers probably can’t control very much from gedit (or whatever that notepad clone is called), can ya. Nah. Didn’t think so.

UPDATE (2010-02-12): Set up more playlists while ago.

What up, juggalos? I also just added the firemacs add-on to firefox/iceweasel. I have conkeror installed, too, and I think from first impressions that I really prefer conkeror. Maybe I’m just more used to it.

Running monkey httpd on AA1 under crunchbang

August 10, 2009

One of the things I liked about DSL was its inclusion of just about everything you’d ever need whether you wanted to use it as a desktop or a server. I figure from the posts in the forums that desktop use far outpaced server use but it’s quite capable as a server. DSL included everything from SSH and SSL to FTP server to a small HTTP daemon called monkey, which along with any of the other services could be started at boot from a cheatcode.

I think monkey was one of those things that kind of grew on me even though I’d often use thttpd (personal favorite). I’d use it at home for a variety of things including running a local bloxsom blog and hosting family calendars. I’d sometimes use it at work to test things and to set up a temporary server for our group. Despite its tiny size, monkey does CGI and can handle just about whatever you’d want a small HTTP daemon to do without any bloat and with easy configuration. It’s also been rock-solid in my experience, even with moderate traffic. I think you don’t need a full LAMP stack if your needs are fairly simple and you’re not setting up a production server with loads of traffic (and thttpd, which I think is more robust, should suffice if that’s the case).

I needed to look at something and needed to host it on my own network, so I looked to see if monkey is available in the Ubuntu repositories. It is, so I installed it.

The first thing I discovered is that its default conf file (/etc/monkey/monkey.conf) uses port 2001, which is kind of stupid (IMO). I edited it to a more suitable and easily remembered port (8080).

Once it’s set up the way you want, you can start the daemon:
sudo /etc/init.d/monkey start

Actually, you should first check to see if it’s started by default (see below) when you install it. Whether it is or isn’t, it’s safe to issue a stop before starting and/or reconfiguring it if you need to use a different configuration than its default. I think it’s fucked up to set things up to start automatically upon installation or even upon reboot unless/until the user decides to run it. Guess that’s why I still hate Ubuntu and the mindset of the user it attracts (I was going to add a post about this utter shitheadedness affecting the wider Ubuntu community the other day but I’m trying to be more diplomatic — really).

Once it’s started, you can point your browser to localhost:portnumber (e. g., http://localhost:8080) or even to your IP (if not proxied) to reach it from the Internet. Here’s the default monkey page:

screenshot-20090810102113

You can set up your own index.html and configure it as you see fit, including starting with a conf file in your home directory. Just copy the default in /etc/monkey to wherever you want to set it up (such as ~/.monkey). My own preference is to set things up in my home directory, so I have ~/www set up with a directory tree suited to my needs.

screenshot-20090810102056

Another thing (not surprising) I discovered about the Ubuntu package is that it’s set up to start at boot. I moved the S monkey file in my default runlevel (e.g., /etc/rc3.d/) to K. I don’t intend to run a full-time httpd so I’d just as soon start it manually as-needed. It’s not that big but it’s the thought that counts. Keep that in mind when using packages from the bloated distros. (Didn’t I write above that I’m trying to be more diplomatic? See? I didn’t repeat how totally fucked up I think it is to start these kinds of services without users taking full control of them first.)

Also, I noticed {Tiny,Micro}Core doesn’t have a package for monkey yet. I’ll probably add that to my compile list shortly.

Misc Update 20090806 – TinyCore Audio Fun

August 6, 2009

Just had a little more time to boot into TinyCore.There’s nothing wrong with the screenshots. TinyCore’s tiny X server only does standard VESA resolutions and netbooks have this odd 1024×600. What you see is 1024×768. You have several options for full X if seeing 1024×768 crushed into 1024x6oo is too off-putting. I only had a few minutes so it’s not life-threatening.

This time I decided to play with audio. I’d used the OSS extension before and this time I wanted to set up ALSA instead. No problems. Loaded the modules and dependencies, ran alsaconf to set up my card, and preliminarily checked settings with alsamixer.

screenshot_0806140159

I set up my usual mplayer-pls script to run from ~/bin. Then I went to shoutcast, found a stream, clicked on the link, aterm opened and the cache filled, then I heard Iron Maiden. Perfect!

screenshot_0806140618

Then I tried a few more streams to make sure everything was correct (of course it was). One thing the ALSA extensions have over OSS is automatic muting of the speaker when headphones are plugged in; the OSS extension has a command line option to set that to true, but the default is to not mute the speaker. No biggie but go figure.

Now I’m going to decide if crunchbang gets my current /home partition or the smaller / partition. {Tiny,Micro}Core gets the other.

I’ll have a list of stuff I’m compiling soon. I thought I was going to have time this weekend (and beyond…) but it looks like I’ll be heading back to take care of family for a while again. This time shouldn’t be as long or soul-crushing time-consuming.

Update: Hmmm, was it using oss instead of alsa? I’ll look again later and set up my script with -ao alsa to make sure defaults are overridden.

getting ready for crunchbang de-bloat, etc.

July 11, 2009

I haven’t changed things around much yet beyond what I wrote yesterday. I’ve started looking at what I can remove and what I’ll have to live with. Here’s a list of the things from dry runs I did earlier to see what I can do without causing major breakage:

The following packages will be REMOVED:
 abiword abiword-common abiword-help abiword-plugin-grammar 
 abiword-plugin-mathview gnumeric gnumeric-common gnumeric-doc 
 libgoffice-0-6 libgoffice-0-6-common 
0 packages upgraded, 0 newly installed, 10 to remove and 0 not upgraded.
Need to get 0B of archives. After unpacking 60.4MB will be freed.

The following packages will be REMOVED:
 agave 
0 packages upgraded, 0 newly installed, 1 to remove and 0 not upgraded.
Need to get 0B of archives. After unpacking 1012kB will be freed.

The following packages will be REMOVED:
 claws-mail claws-mail-html2-viewer claws-mail-i18n claws-mail-pgpinline 
 claws-mail-pgpmime claws-mail-trayicon tango-icon-theme-claws-mail-3.6.0 
0 packages upgraded, 0 newly installed, 7 to remove and 0 not upgraded.
Need to get 0B of archives. After unpacking 9720kB will be freed.

The following packages will be REMOVED:
 linux-headers-2.6.28-13 linux-headers-2.6.28-13-generic 
 linux-headers-generic 
0 packages upgraded, 0 newly installed, 3 to remove and 0 not upgraded.
Need to get 0B of archives. After unpacking 74.7MB will be freed.

The following packages will be REMOVED:
 crunchbang-gwibber-theme gedit-plugins gwibber libmetacity0 metacity 
 metacity-common python-gnome2-desktop 
0 packages upgraded, 0 newly installed, 7 to remove and 0 not upgraded.
Need to get 0B of archives. After unpacking 16.6MB will be freed.

The following packages will be REMOVED:
 nvidia-173-modaliases nvidia-180-modaliases nvidia-71-modaliases 
 nvidia-96-modaliases nvidia-common 
0 packages upgraded, 0 newly installed, 5 to remove and 0 not upgraded.
Need to get 0B of archives. After unpacking 459kB will be freed.

The following packages will be REMOVED:
 libpurple-bin libpurple0 pidgin pidgin-data 
0 packages upgraded, 0 newly installed, 4 to remove and 0 not upgraded.
Need to get 0B of archives. After unpacking 28.9MB will be freed.

The following packages will be REMOVED:
 rhythmbox 
0 packages upgraded, 0 newly installed, 1 to remove and 0 not upgraded.
Need to get 0B of archives. After unpacking 14.5MB will be freed.

The following packages will be REMOVED:
 vim vim-gtk vim-gui-common vim-runtime xchat 
0 packages upgraded, 0 newly installed, 5 to remove and 0 not upgraded.
Need to get 0B of archives. After unpacking 30.2MB will be freed.

The following packages will be REMOVED:
 libexo-0.3-0 libthunar-vfs-1-2 libxfce4util4 libxfcegui4-4 libxfconf-0-2 
 thunar-data xfburn xfconf 
0 packages upgraded, 0 newly installed, 8 to remove and 0 not upgraded.
Need to get 0B of archives. After unpacking 19.5MB will be freed.

I think I counted over 200MB and that’s without counting things like gpodder, which is of no use to me if MTP support is lacking for my S3 (so libmtp and mtp-tools will go), and a few other things in that list. I can also get rid of some of the CD/DVD tools (brasero if it’s not in that list above) since I don’t have any plans to start toting around a USB CD/DVD which will probably outweigh my AA1. My mini CDRW bit the dust when I was taking care of family last year. I haven’t been able to find another device this small and thumbdrives are big enough now that I don’t see any reason to get an external optical device. Even Microsoft is considering putting the Windows 7 installer on a USB drive to make installation easier for netbook users. What’s funny is, Microsoft may beat most of the big Linux distros to the punch — with most distros, live images can be put on USB media via external tools like unetbootin or Fedora’s live USB creator. There are only a handful which have USB-ready images that can be installed via simple scripts. I think that’s the future whether netbooks and nettops ever outsell traditional computers.

100_0660_scaled

Yes, that’s the old CDRW next to my AA1. If anyone knows of a DVD-RW (or Blu-Ray!) this small, please let me know.

By the way, no problems like I had in Fedora yet with wifi even though I’ve tested suspend/resume. The only thing that continues to be an issue is the initial association with the wrong AP before it re-associates with my router. I really, really don’t like that but I haven’t looked to see what I can do to stop it. In addition to the stuff in dmesg, iwconfig shows the association with SSID=”the wrong one” and then after the nm-applet icon changes to show that it’s connected iwconfig shows SSID=”my router.”

I have some other things I have to take care of today and a busy evening, too. It might be tomorrow before I get down to business.

crunchbang update: jwm, aterm, acpi/wifi issues, and office software

July 10, 2009

Just had a little time to mess with #! while I grabbed a bite. I installed aterm, terminus (the X fonts weren’t installed in the base but the console fonts were), dillo, and jwm. Edited a quick jwmrc and had to add an entry in /usr/share/xsessions for it so I can choose it from gdm.

2009-07-10--1247248464_1024x600_scrot

Why jwm? I got a look at the menu for openbox with the number of tags it uses for each entry — just too much. I mentioned in comments previously that jwm is much lighter and yet has the basic pieces (panel/tray, etc.). Plus I can set it up so things open without borders or title bars, etc. It just suits me better. No idea yet when I’ll install ratpoison or even if this means I’ll make more space by removing openbox, tint2, etc. Who knows.

I  unplugged to see if the power manager applet would pop up like it’s supposed to. For some reason, it doesn’t do anything until I cat for battery state. Similarly, there’s a delay with nm-applet looking for my SSID when I boot or resume from suspend. Sometimes it doesn’t seem to start until I do iwconfig. Coincidence? I don’t know but it’s okay for now.

Speaking of wifi, I noticed in dmesg that NetworkManager isn’t associating first to my AP but to another one without encryption. I thought the whole point of setting it up is so it would scan for what you have listed first. Not sure what to make of that. I need to see if I can blacklist any other router so it won’t inadvertently try to connect. It shouldn’t be promiscuous by default like that — it should scan for approved APs first and, if so desired (I don’t), connect to “any.” I’ll look into that more this weekend.

(Edit: Here’s the relevant part of dmesg showing the wrong initial association to another AP.

wlan0: authenticate with AP xx:xx:xx:xx:xx:78
wlan0: authenticated
wlan0: associate with AP xx:xx:xx:xx:xx:78
wlan0: RX AssocResp from xx:xx:xx:xx:xx:78 (capab=0x401 status=0 aid=3)
wlan0: associated
wlan0: disassociating by local choice (reason=3)
wlan0: direct probe to AP xx:xx:xx:xx:xx:xx try 1
wlan0 direct probe responded
wlan0: authenticate with AP xx:xx:xx:xx:xx:xx
wlan0: authenticated
wlan0: associate with AP xx:xx:xx:xx:xx:xx
wlan0: RX AssocResp from xx:xx:xx:xx:xx:xx (capab=0x431 status=0 aid=1)

The wrong AP’s MAC ends with 78,  mine is the second set which are all Xs. It shouldn’t matter that my SSID is hidden and the much weaker signal isn’t encrypted. It should only associate with the AP which I’ve configured.)

Other than that, the few messages I’m getting about wlan0 appear to be normal and don’t look like the ones I had while running Fedora 10.

Finally, I was going to see if I could work on a couple spreadsheets in gnumeric before committing to installing OpenOffice.org instead. As I suspected, a lot of things broke when I opened in gnumeric. Now I’m looking at what all comes with the OOo package and wondering why the hell I keep doing this to myself. Guess what, pulseaudio is one of the dependencies. So are all kinds of fonts I’ll never use. Great. Just fucking great. I may hold off making any changes and only work on things from Windows until either I decide what I’m going to do in October or see if IBM will get the OOo-3.x-based version of Lotus Symphony (my favorite office suite; too bad the current version is based on OOo 1.x and not yet compatible with my OOo 3.x spreadsheets) out this year.

Update 20090705 – services trimming, fluxbox tweaking, added xsel, dircolors, etc

July 5, 2009

I was going to install some ratpoison-friendly tools late (for me) last night but, as usual, they come with so much overhead that I decided against installing. These are things that work well regardless of window manager. I’d run into similar bloat issues back when I was using Debian on my old laptop — try to install something light and it comes with MBs of dependencies that aren’t needed unless you compile with every option. This is one of my biggest gripes against binary-based distros. For the convenience of not having to compile anything, you’re hostage to how others compile them for you.

This time the apps I wanted to add were xsel and xbindkeys; the dependencies in Fedora are guile and tcl/tk.

screenshot-20090704185238

Had to say no. I think I can add xsel without guile or tcl/tk — I’ll check and see in a bit. (Edit…) Okay, I’ve installed xsel because it has no dependencies I didn’t already have installed. I could live with guile but I’m not going to install even more languages like tcl just to use one small app. Fedora comes with enough as it is. Why not streamline everything and use perl, python, or lua only? I think I installed ruby when I installed mew. I wish everything in open source was more standardized and more attention was paid to reducing dependencies so you don’t have disparate libs for disparate apps like this.

I also spent a little time last night trimming down services that start up in my favored run level. I decided to start CUPS manually since a lot of the time I’m not connected to my main printer or near enough one of the available network printers to get my stuff. I also shut off the NFS-related (rpc) services, IPV6, and a few others.

This morning I started on something totally unimportant except to Linux “reviewers” (especially the ones at distrowatch), aesthetics. I wanted something a little less dark. This is it for now. Whatthefuckever.

screenshot-20090705071957

Of course, my terminal is still black and about 75% of what I do is in that (screen) so it doesn’t make much difference. I decided to alias ls to include dircolors in my mksh profile so I have a little more color there now. Not a big deal either way. Same information as before.

Since I added more stuff in my .xinitrc, it’s apples to oranges comparing initial RAM hits. At login, though, I’ve lost about 10 more MB. I know there are people who consider unused RAM a waste of resources, but I find it more wasteful to clog up RAM with things that won’t be used or which serve dubious purposes lacking any utilitarian value (including wobbling windows).

I still have more things to do with fluxbox configuration, especially adding more keybindings. It’s kind of awkward the way it’s set up now with some of the defaults. I also want to add more things to the menu to automate tasks.

That’ll all have to wait. I hadn’t planned on doing any of this last night or this morning. More during the week when (if) I find time.

Fedora 10 on AA1: Configuring Skype, Using Fluxbox

July 2, 2009

Using fluxbox in Fedora 10 today. Mainly because I was working on Skype settings between conference calls and writing reports, and Skype is one of those nasty little apps that opens up multiple little windows which ratpoison manages individually. I haven’t had good luck using tmpwm in ratpoison, and I wouldn’t want to do that just to go back and forth to Skype.

screenshot-20090702154525

I’m also running NetworkManager (and nm-applet) again today while I test something else out. I’m likely removing that altogether ASAP and trying something different and easier to manually configure. I hate having networking spawned as a child process within X. It’s no problem as long as you’re in X but it has to be restarted if you break your X session for any reason. I saw a few options (not wicd — I want something lower resource but still able to choose between certain networks and blacklist others) so I may play around when I have more time and see if I can find something manageable and fairly flexible. Or no?

I had Skype working before I scrapped everything and installed Debian. I had to go through every setting again to remember what I did before, and then I realized Skype’s setting was still stuck on “Let Skype Adjust Your Audio.” Oh no. I got it all fixed when I stopped letting Skype fight me. Skype should be easier to set up without pulseaudio since it uses alsa anyway; IIRC, I had an easier time setting it up before even though I didn’t remove pulseaudio the first time I set up Fedora 10. BTW, I used alsamixer this time to adjust my audio settings.

I know Skype isn’t open source. So what. Not everything is or can be. I don’t have a problem with it. If someone could come up with a legitimate cross-platform open source application that works as well and (in most cases) easily, I’d use it. Right now Linux has no video conferencing software compatible with AIM let alone multi-platform so Skype it is. If there’s an argument against Skype being closed source it means that it can’t be re-written to use only one window. But the same argument is pretty much true of open source software like GIMP which also opens too many windows rather than operating within one.

I’ve also noticed one of those quirks between Linux and Windows. The space just to the right of the Synaptics touchpad gets pretty hot. That’s right above where the wifi card is located. I wonder if that’s why it’s gone wonky on me a couple times before. I haven’t noticed it getting this hot before in Windows. Who knows.

I’ve written before that I’m not a big fan of fluxbox. It works which is all that matters to me. I think I still prefer jwm because it’s more utilitarian and fairly easy to configure. I’ll see if I can get around to binding more keystrokes for things; I’d like to ditch the redundant title bars on the windows, too, and open (most) things maximized.

Okay, back to work. I have a lot of stuff to edit tonight.

Windows Tip: Setting Up Mix and Match Default Browser and E-Mail

June 29, 2009

Here’s another Windows tip for those who want to use a different combination of default browser and e-mail client. This can be used to reset to default Windows settings of Internet Explorer and Outlook Express or to whatever applications you want instead. The point of this is to show that one can easily mix and match open and closed source software in Windows.

This will work for anything installed on your system and identified as browser and/or e-mail client. That will include the usual choices of Firefox, Opera, Thunderbird, and the default Windows programs mentioned above. You can use these same settings to revert to different defaults should you change settings you don’t like.

It also includes other less-known applications like Sylpheed. I like Sylpheed because it’s light on resources, very configurable and customizable (I use mew keybindings and have a lengthy set of filters that include a variety of colors to designate different things as well as the usual sorting of mail by category), and it functions the same way between operating systems. Its mbox import/export also means you can easily sync an account between different machines and even different operating systems. Sylpheed also works without any manual configuration of other applications like security suites; in my experience, it’s worked wonderfully with both McAffee (trial version on my AA1) and Kaspersky (which scans my mail and I’ve also used as a spam/junk filter).

For this example, we’re going to set up Sylpheed as the default e-mail client within IE8 (which remains my default browser in Windows even though I use conkeror more often now). The first setting to change is in tools-Internet options.

custom-email-03

Select the applications tab once you open the Internet options dialog and you’ll see choices for editor, mail, news groups, etc.

custom-email-04

Once you choose the application you want, hit Apply on the bottom. Note this should only work if you’re running the account as administrator (I had to log out, log into my administrator account, change my user setting to administrator, log back in to make my change, then go through the process again to place my account back to limited user). I know many people run as administrator which opens up the system to everything in the world. The reason you don’t want this variable to be changed by a limited user is because any exploit that can affect your browser could change app settings on the fly and compromise your system and your data. I think that’s also a good reason to not run as administrator except as needed. I know it’s not convenient, but the easier and more convenient things are for the user to change system settings the easier it is for any vulnerability to affect the whole system.

Once you have that set, you should be able to use whatever e-mail client you want within IE so that clicking on a mailto: link will open up a composer for your chosen client.

If an icon wasn’t set up in your Start Menu, you can add one this way (and it shouldn’t require administrator privileges). Right click on the task bar and select properties. You’ll get a dialog like the one below. Select the Start Menu tab and then Customize.

custom-email-01

This will open another box allowing you to (re-)choose your default browser and e-mail client.

custom-email-02

That will put an icon (with the “e-mail” description above it if you’re using the “big icons”) in the top part of your Start Menu. This will also cause whatever app you choose to open if you use the envelope icon on the IE icon bar (“Read Mail”).

It shouldn’t be — and it isn’t — difficult to set up whatever operating system you choose to use with whatever choice of applications you want. You don’t have to switch to Linux just to take advantage of open source software. You can configure Windows to work and look like you want it to even if you mix and match open and closed source software.

Minor Updates on Site Content and Debian Lenny on AA1

June 16, 2009

Site news

A few minor site updates to note. I fixed the links to Secunia’s Linux 2.6 vulnerabilities page. Removed RSS feeds for Secunia’s vulnerabilities updates and linux.com content. Might have time this afternoon to work on the DSL Hard Drive guide again, will post it as soon as I finish.

I checked stats and see I’m getting lots of hits for Fedora 11 content. Many of the search phrases indicate people are frustrated with F11, with everything from “Fedora 11 is shit” and “Fedora 11 sucks” to variations of terms related to booting the live CD and from USB. As I wrote in the update with my “first look” last week, I installed the image to USB using netbootin within Fedora 10. If you’re using another distro, look for the libraries required to use netbootin and then use it to install the image to USB. I removed netbootin from Windows because none of the images I tried ever booted. But it worked pretty well with everything from within Linux (I’ll probably use it again if I decide to replace Debian).

Debian Lenny on AA1

No big news since last night. I’ve been playing with MTP this morning while on and off the phone. Not working with rhythmbox. I’m able to get information from the S3 via mtp-detect and other mtp-utils and I can mount via mtpfs; none of that will let me transfer files, though. I also edited udev rules but the only thing I can do for now is read from the device; I can live with it if I can get the utils to work — I don’t need (or want) rhythmbox just to move files around and delete old podcasts. I looked at Debian bugs and may need to update libmtp with a more recent package.

I used <Group> tags in jwmrc to set certain apps to open as I want them. This is Iceweasel, which is now set to open on my second virtual desktop maximized, without title bar, and without window borders.

more-minor-things

Will hopefully get around to installing Skype today or tomorrow since that (getting cam to work in it) will likely be a deal maker/breaker for whether I stick with Debian or move along to another distro or move the whole system to unstable or testing. I’d like to get the cam working beyond Skype if possible. I was thinking of adding more content to youtube at some point — I’d like to be known for a bit more than my two crappy videos.

Finally, I wondered what all would get removed if I were to run “aptitude remove gnome gnome-desktop” and I found out while ago when I looked:

Reading package lists...
Building dependency tree...
Reading state information...
Reading extended state information...
Initializing package states...
Reading task descriptions...
Note: selecting the task "gnome-desktop: GNOME desktop environment" for installation
Note: selecting the task "gnome-desktop: GNOME desktop environment" for installation
The following packages will be REMOVED:
 alacarte{u} app-install-data{u} arj{u} aspell{u} bluez-gnome{u}
 capplets-data{u} cdrdao{u} cheese deskbar-applet{u} desktop-file-utils{u}
 dmz-cursor-theme{u} dvd+rw-tools{u} ekiga{u} eog{u} epiphany-browser
 evince{u} evolution{u} evolution-common{u} evolution-data-server{u}
 evolution-data-server-common{u} evolution-exchange{u}
 evolution-plugins{u} evolution-webcal{u} fast-user-switch-applet{u}
 file-roller{u} gcalctool{u} gconf-editor{u} gdm{u} gdm-themes{u} gedit{u}
 gedit-common{u} genisoimage{u} gksu gnome gnome-about{u}
 gnome-app-install{u} gnome-applets{u} gnome-applets-data{u}
 gnome-backgrounds{u} gnome-cards-data{u} gnome-control-center{u}
 gnome-core{u} gnome-desktop-data{u} gnome-desktop-environment
 gnome-games{u} gnome-games-data{u} gnome-media{u} gnome-media-common{u}
 gnome-menus{u} gnome-netstatus-applet{u} gnome-nettool{u}
 gnome-network-admin{u} gnome-panel{u} gnome-panel-data{u}
 gnome-power-manager{u} gnome-screensaver{u} gnome-session{u}
 gnome-settings-daemon{u} gnome-spell{u} gnome-system-monitor{u}
 gnome-system-tools{u} gnome-terminal gnome-themes{u}
 gnome-themes-extras{u} gnome-user-guide{u} gnome-utils{u}
 gnome-vfs-obexftp{u} gnome-volume-manager{u} gnuchess{u} gparted
 gstreamer0.10-alsa{u} gstreamer0.10-ffmpeg gstreamer0.10-gnomevfs{u}
 gstreamer0.10-plugins-good{u} gstreamer0.10-tools{u} gstreamer0.10-x{u}
 gthumb gthumb-data{u} gtk2-engines{u} gtk2-engines-pixbuf{u}
 gtkhtml3.14{u} gucharmap{u} guile-1.8-libs{u} hal-cups-utils hardinfo
 iceweasel-gnome-support libao2{u} libavahi-ui0{u} libcairo-perl{u}
 libcairomm-1.0-1{u} libcamel1.2-11{u} libcdio7{u} libcupsys2{u}
 libdmx1{u} libdv4{u} libebook1.2-9{u} libecal1.2-7{u}
 libedata-book1.2-2{u} libedata-cal1.2-6{u} libedataserver1.2-9{u}
 libedataserverui1.2-8{u} libegroupwise1.2-13{u} libepc-1.0-1{u}
 libepc-ui-1.0-1{u} libexchange-storage1.2-3{u} libexempi3{u} libgadu3{u}
 libgalago3{u} libgda3-3{u} libgda3-common{u} libgdata-google1.2-1{u}
 libgdata1.2-1{u} libgdl-1-0{u} libgdl-1-common{u} libggz2{u}
 libggzcore9{u} libggzmod4{u} libgksu1.2-0{u} libgksu2-0{u}
 libgksuui1.0-1{u} libglib-perl{u} libglibmm-2.4-1c2a{u} libgmyth0{u}
 libgnome-media0{u} libgnome-pilot2{u} libgnome-window-settings1{u}
 libgnome2-canvas-perl{u} libgnome2-perl{u} libgnome2-vfs-perl{u}
 libgnomecups1.0-1{u} libgnomekbd-common{u} libgnomekbd2{u}
 libgnomekbdui2{u} libgnomeprint2.2-0{u} libgnomeprint2.2-data{u}
 libgnomeprintui2.2-0{u} libgnomeprintui2.2-common{u} libgnomevfs2-bin{u}
 libgpgme11{u} libgpod3{u} libgtk-vnc-1.0-0{u} libgtk2-perl{u}
 libgtkhtml3.14-19{u} libgtkmm-2.4-1c2a{u} libgtksourceview-common{u}
 libgtksourceview1.0-0{u} libgtksourceview2.0-0{u}
 libgtksourceview2.0-common{u} libgtkspell0{u} libgtop2-7{u}
 libgtop2-common{u} libgucharmap6{u} libgweather-common{u} libgweather1{u}
 libhesiod0{u} libhtml-parser-perl{u} libhtml-tagset-perl{u}
 libhtml-tree-perl{u} libiptcdata0{u} libkpathsea4{u} liblua5.1-0{u}
 libmeanwhile1{u} libmetacity0{u} libmusicbrainz4c2a{u}
 libmysqlclient15off{u} libnautilus-burn4{u} libnet-dbus-perl{u}
 libnm-glib0{u} liboobs-1-4{u} libopal-2.2{u} libopenobex1{u}
 libpanel-applet2-0{u} libparted1.8-10{u} libpisock9{u} libpisync1{u}
 libpt-1.10.10{u} libpt-1.10.10-plugins-alsa{u}
 libpt-1.10.10-plugins-v4l{u} libpth20{u} libpurple0{u} libshout3{u}
 libsilc-1.1-2{u} libslab0{u} libsoup2.2-8{u} libspectre1{u}
 libspeexdsp1{u} libtotem-plparser10{u} libtrackerclient0{u}
 liburi-perl{u} libwww-perl{u} libxklavier12{u} libxml-parser-perl{u}
 libxml-twig-perl{u} libxss1{u} libzephyr3{u} liferea lsb-release{u}
 menu-xdg metacity{u} metacity-common{u} mysql-common{u} nautilus{u}
 nautilus-cd-burner{u} nautilus-data{u} openoffice.org-evolution
 openoffice.org-gnome openoffice.org-gtk{u} p7zip{u} pidgin pidgin-data{u}
 pkg-config{u} python-4suite-xml{u} python-apt{u} python-cups{u}
 python-cupsutils{u} python-eggtrayicon{u} python-gdata{u} python-gdbm{u}
 python-gmenu{u} python-gnome2-desktop{u} python-gnome2-extras{u}
 python-gnupginterface{u} python-gst0.10{u} python-gtkhtml2{u}
 python-gtkmozembed{u} python-gtksourceview2{u} python-notify{u}
 python-sexy{u} python-software-properties{u} python-vte{u} python-xdg{u}
 rarian-compat rhythmbox{u} seahorse{u} serpentine{u}
 software-properties-gtk{u} sound-juicer{u} sudo{u} swfdec-gnome{u}
 synaptic{u} system-config-printer{u} system-tools-backends{u}
 totem-common{u} totem-gstreamer{u} totem-mozilla{u} totem-plugins{u}
 transmission-common{u} transmission-gtk{u} unattended-upgrades{u}
 unzip{u} update-manager{u} update-manager-core{u} update-notifier
 update-notifier-common{u} vinagre{u} vino{u} wodim{u} xbase-clients{u}
 xsane xsane-common{u} zenity{u} zip{u}
0 packages upgraded, 0 newly installed, 262 to remove and 0 not upgraded.
Need to get 0B of archives. After unpacking 720MB will be freed.
Do you want to continue? [Y/n/?]

Not just yet. This gets back to some of my old complaints (search a year or two back under my Debian category) about using distros where everything is dependent on everything else so that you either have to live with bloat or recompile everything you want without every possible dependency. Guess that’s the price of convenience of having so many things precompiled and (usually) preconfigured. Just seems like too high a price sometimes.