gcc-libs / gcc-libs-multilib conflict

My morning updating ritual was interrupted by an annoying question from pacman:

$ packer -Syu
:: Synchronizing package databases...
core 106.7 KiB 650K/s 00:00 [######################] 100%
extra 1422.5 KiB 1151K/s 00:01 [######################] 100%
community 1786.4 KiB 927K/s 00:02 [######################] 100%
multilib is up to date
:: Starting full system upgrade...
resolving dependencies...
looking for inter-conflicts...
:: gcc-libs and gcc-libs-multilib are in conflict. Remove gcc-libs-multilib? [y/N] ^C

That’s no fun. I can’t be removing gcc-libs or things will be blowing up. But why is it asking me to remove gcc-libs-multilib anyway? As a multilib dependent 64bit OS user, I can’t replace that. Luckily, I happened to check the forums this morning and someone else ran into this same problem. Turns out that for me, anyway, I had a tool that still relied on gcc-libs, as I hadn’t replaced it with its -multilib doppleganger. In my case, I had libtool and I should have had libtool-multilib. Not sure exactly how I got in that state. You wouldn’t think it would let me replace gcc-libs with gcc-libs-multitool if there were things that depended on it. But I guess it says it provides ‘gcc-libs’, so libtool was happy. But when it came time to upgrade, it wanted to use gcc-libs.

So to fix it I merely installed libtool-multilib, allowing it to replace libtool. Then my upgrade went as planned, as there wasn’t anything asking for gcc-libs any more.

Here’s the list brain0 posted in the forums, saying if you replace one of them with its multilib compatriot, you need to replace them all:

inutils-multilib
gcc-ada-multilib
gcc-fortran-multilib
gcc-go-multilib
gcc-libs-multilib
gcc-multilib
gcc-objc-multilib
libtool-multilib

conflict between gcc-libs / gcc-libs-multilib (gcc-objc related) (Page 1) / Pacman & Package Upgrade Issues / Arch Linux Forums.

iedit for Emacs

Just added a new package to the AUR for iedit, which is a pretty cool mode for Emacs to edit in place a bunch of regions containing the same text. See this post by Mastering Emacs for some usage and a nice little defun to narrow the changes to the current defun:

IEDIT: INTERACTIVE, MULTI-OCCURRENCE EDITING IN YOUR BUFFER

AUR (en) – emacs-iedit-git.

New Desktop

I decided to try a new window manager [1], just because I hadn’t wasted enough time on just fiddling with Conky [2]. I’m not really into a tiling window managers, even though I have plenty of display space (2 1920×1080 monitors). I had been reading in the Arch forums about GOOMWWM [3] (Get Out Of My Way Window Manager) and looking at the goomwwm web page for it[4] made me think that despite its newness, it looked relatively complete, especially with Xinerama [5] support for my dual monitor setup. So I decided to give it a try.

Trying a new window manager isn’t really that big a deal, especially if you are like me and are lazy hardcore enough to not bother to install a login manager like SLiM and just log in to a text terminal and type startx to bring up X. You just change the window manager that gets exec’d at the end of your .xinitc script to be the one you want. So I changed

exec ck-launch-session dbus-launch openbox-session

to be

exec ck-launch-session dbus-launch `which goomwwm`

and off I went! To be honest, I’m not really sure (a) what the “ck-launch-session dbus-launch” part of the command does or (b) if I really need it (as I just copied it from the openbox Arch wiki page), but I left it in there for safety’s sake.

But with nothing set up, it merely brings you to a blank, black screen. And, as I didn’t have ‘dmenu‘ [6] installed (it should be, I think, at least an optional dependency, as it is prominently featured in the GOOMWWM tutorial [7]), I couldn’t really do anything!

So I went back to the command line and installed dmenu and followed the tutorial, and lo, it was good. Window control is a little more painful with the mouse as you have to hold down the Mod key (left Windows key by default) but is a snap with the keyboard, so that’s okay. The concept of tags for windows that correspond to desktops in other window managers again takes some getting used to but works very well in practice. It’s especially nice to be able to bring up a window on another “desktop” by merely clicking on it.

So then I spent way too much time getting things somewhat customized. I still like blue for a desktop color, so I went over to The Paper Wall to find a few interesting wallpapers and settled on a blue forest [8] as my left desktop and a nice waterfront view of Boston [9] as my right desktop.

Then I went a Conky customizing, which is an endless time sink if there ever was one. Luckily, I discovered this great Conky customizing script called ‘conky-colors‘ [10]. Basically, you pass in a few (or more!) parameters and it creates a stock Conky config file with support scripts and everything. I eventually settled on this for a conky-colors command line:

$ conky-colors –cputemp –theme=human –arch –cpu=4 –proc=5 –clementine=vinyl –calendar –nvidia –hd=default –weather=USMA0245 –photord –network –unit=F –clock=modern –side=left

And then I modified away, mostly to just get the right colors (more blue!). That’s the panel on the left side of the right hand screen. It shows system info, a calendar and clock, a random picture from a folder, what my media player (Clementine) is currently playing, and some more system stats.

The I finally found a script that generated a good Conky weather forecast pane in conkywx[11]. There were a few bumps in the road, but I got them ironed out with the help of the author in the Arch forums and now I have a nice weather panel in the lower right.

So now I just need to get used to goomwwm. I like being able to quickly and easily use the keyboard to move and resize the windows, and even fill the blank space. It can behave a little like a tiling window manager, with commands for windows to swap position, share a position, etc, which I haven’t played with much.

It also has a unique idea about “desktops”. You can tag any window with a number between 1 and 9 and then hit Alt-F[1-9] to bring all those windows with that tag number to the front. The others are still there but just behind. So it is easy to assign windows to different tags and swap between them, but you can also use very easily use windows with other tags by just clicking on them. And goomwwm tells other tools (like Conky) that the tag selected is the “desktop”. Works pretty well.

[1] http://xwinman.org/intro.php
[2] http://conky.sourceforge.net/
[3] https://bbs.archlinux.org/viewtopic.php?id=144038
[4] http://aerosuidae.net/goomwwm/
[5] http://en.wikipedia.org/wiki/Xinerama
[6] http://www.archlinux.org/packages/community/x86_64/dmenu/
[7] http://aerosuidae.net/goomwwm/tutorial
[8] http://thepaperwall.com/wallpaper.php?view=5cddb00435b4ffd1a4d7a08d351723dcee9a3f7d&fol=nature
[9] http://thepaperwall.com/wallpaper.php?view=3b66596749f5d2b44356207bc05a9be32eaa9219&fol=cityscape
[10] https://github.com/helmuthdu/conky_colors
[11] https://bitbucket.org/plikhari/conkywx_pub/overview

My October screenshots. Click to embiggen.

Clean:
Dirty:

Pacman info

I have really become addicted to using the -Qo flag of pacman. This is especially true with the various times I have had to do the painful /usr/lib move, as you need to figure out which package owns the files that are left in /lib. It’s pretty easy, really

$ pacman -Qo /usr/lib/libQtCore.so
/usr/lib/libQtCore.so is owned by qt 4.8.2-3

Very nice. And, even better, I found out you can just omit the full path if it is an executable in your path:

$ pacman -Qo hostname
/usr/bin/hostname is owned by inetutils 1.9.1-4

Nice.

/lib -> /usr/lib fiasco, more

I just updated an ArchBang VM I have and I ran into, once again, the:

News: The /lib directory becomes a symlink

debacle. Yes, it’s been awhile since I tried updating. My main machine actually updated without a problem (at least until the hard drive died). The “easy way” failed. The “hard way” failed. Finally I just did the verboten -f and broke everything.

But I’m glad to report that not only did the process mentioned below work, it completely cleaned up my VM and now we’re on the straight and narrow, vis-a-vis /usr/lib:

/lib exists in filesystem when installing testing/glibc 2.16.0-2 (Page 1) / [testing] Repo Forum / Arch Linux Forums.

archlinux(7)

Thanks to Allan McCrae’s blog post on his switch to systemd, I found out about the archlinux(7) man page, which is quite useful:

NAME
archlinux – basic configuration

SYNOPSIS
Overview of the basic configuration of Arch Linux.

DESCRIPTION
Arch Linux exposes the user to the system without hiding any details. This manpage
gives a brief overview of the configuration files that should be set up on a fresh
install.

Give it a try!

Monitoring

So I got my new monitor today. I have been kind of annoyed since I got this 1920×1080 monitor from work (2 years ago maybe?) that the other monitor I had was 1680×1050. Not that the width mismatch is noticeable but the height one sure is. Without a true rectangular surface, some things are either lost off the bottom, or the mouse doesn’t move smooth across it. So I have been dying to get a 1920×1080 monitor to match it

So Best Buy had a sale the other day and they had a 24″ TV on sale that supposedly did 1920×1080. And that would be perfect. I would hook the PC connections up for my 2 work machines and then plug in the HDMI from the home theater PC to get both video and sound from it. So I bought it and brought it home and hooked it up.

Oops, didn’t work. Turns out, you only get 1920×1080 if you hook it up via HDMI and I needed to use the VGA plug to use with my KVM switch that allows me to share my 4 (!) computers with one keyboard, mouse and one set of dual monitors. You only got some weird screen resolution with the VGA adapter (something like 1300×768 or something like that).

So back it went. Too bad, because I really liked the idea of a remote even. So I decided to think about it some more, as I didn’t see anything at Best Buy that had what I wanted:

  1. 1920 x 1080 via the VGA
  2.  builtin speakers (so I can watch a movie with my home theater PC – my 5.1 Logitech speakers are hooked up to my main personal system).
  3. HDMI input (I didn’t want to be bothered with a DVI->HDMI adapter, as my home theater PC display card has an HDMI connection right on it)
  4. At least 23″ in size

Then I got an email from Newegg, bragging about some monitors. While none of the ones in the advert were what I was looking for, they have a very shopping website that easily allows you to focus in on the features you want (unlike Amazon or, even worse, Best Buy). And I saw this ASUS monitor on sale for $180, with a $10 rebate. Seemed like a nice with all the features I was looking for. So I took the plunge.

And after just 2 days (free shipping even), it arrived today, so I hooked it up. And I am impressed. In fact, the biggest problem with the monitor is that it puts my other 1920×1080 monitor (by Sceptre?) to shame. It is bright, crisp, sharp, really nice. And it worked very well with my home theater PC even. This Asus VH238H Black 23″ monitor is really nice and now I’m thinking I should buy another one, even though I probably can’t get the rebate again.

So now I have a very nice desktop. Two side by side 1920×1080 monitors makes for a pretty sweet layout.

The only real drawback to it is that it is a bit finicky to swap the input. It would have been nice to have a remote to do it. I have to press a front panel button, hit it a few times, select Input, then down arrow a few times to select the HDMI. But I won’t be doing that all too often, so it isn’t too bad. But like I said, I really would like to get another one just like it.

Works great with my Openbox installation on ArchBang. I had to reboot to get the nVidia config to notice I had changed my monitors, but that’s all I had to do. I tell you, rag all you want on the binary nVidia drivers, but they just work.

Android adb problems

If you try to connect to an Android device in Eclipse and get a weird entry for your USB-connected hardware device that has a name that looks something like ‘?????????’, you’re not alone. I guess there is some kind of permission problem and there are a few ways you can find on the web, mostly having to do with a udev rule file. But I found the easiest fix was to just restart the adb server as root:

$ sudo adb kill-server
$ sudo adb start-server

Now when you connect to your device via the Run command, you have your standard device name. Not sure why it works, but I don’t have time right now to figure that out!

Mars Needs New Video Card

I have the Witcher 2 on pre-order at GOG.com and it is the first game where the “minimu” video card exceeds my nVidia 8600gt (it wants at least an 8800). As I have somehow survived for 2 or 3 years with this card, I think I have gotten my monies worth.

I used to be a big ATI fan boi but for lo these many days, I have been using nVidia. The proprietary Linux drivers “just work”, especially with my dual monitor set up. I am a little hestitant to go with the ATI, especially due to the KMS business, which I have never had to bother with using the nVidia card.

But Newegg has the 6870 for only U$167 or the 6950 for US$199 with a sale and a rebate, which is hard to pass up. Both seem to get pretty good reviews for what I’ll be doing – mostly just Linux work, with the occasional boot into Windows to play some (usually trailing edge) games.

Anyone have any feedback on these cards? Is the 6950 worth the extra US$30 (about 20%)? As I keep a card for several years, it’s probalby a good idea to max it out while I can, right?

Newegg.com – XFX HD-695X-ZNFC Radeon HD 6950 1GB 256-bit GDDR5 PCI Express 2.1 x16 HDCP Ready CrossFireX Support Video Card with Eyefinity
Newegg.com – XFX HD-687A-ZNFC Radeon HD 6870 1GB 256-bit DDR5 PCI Express 2.1 x16 HDCP Ready CrossFireX Support Video Card with Eyefinity.

Last Week in Arch, March 15-21, 2011

While we await approval in Rolling Release, here’s what went on in the world of your favorite Linux distro last week:

Latest News

wicd split in ‘wicd’ and ‘wicd-gtk’ – announcing a split of the wicd package in the official repository, so you don’t have to use the wicd-nogtk from AUR

Hot Forum Topics

How to find file duplicates only matching size, not md5
Arch Package Signing issue getting big on Reddit
So, FFmpeg has finally blown itself to pieces…

Unanswered Forum Topics

juk music player help needed
Dual Monitor Hook-up, DVI/VGA/HDMI?
Looking for opinions on daemontools vs runit.
Transparent Squid Proxy question
few questions about alsa and vlc
konsole fails to start

Interesting Packages

lshw – A small tool to provide detailed information on the hardware configuration of the machine
lshw-gtk – GTK GUI for lshw
fall-of-imiryn-svn – A classic role-playing style game of three aspiring young warriors.
fwfstab – graphical file system table (/etc/fstab) editor
redditaddictlite – track your karma in real-time.
ryzom_client_open – Free to Play MMORPG, This version is for Testing on open core(dev) server
rmlint – Tool to remove duplicates and other lint, being much faster than fdupes
silicon-empire-git – Set of tools to manage and organize your optical discs like CDs, DVDs and Blu-rays.
golang-hg – A compiler toolchain from Google for the Go programming language
g4l – G4L (Ghost 4 Linux) is a hard disk and partition imaging and cloning tool.
storybook – Open Source Novel Writing Software for Novelists, Authors and Creative Writers

Wiki Changes

Touchatag RFID Reader‎ – new page for this RFID Reader
Firewalls (Svenska) – Translation of the English firewall page to Swedish
Browser Plugins‎ – few updates about troubleshooting
PolicyKit – created page for this privilege controller
Keymap (Português)‎ – Portuguese Keymap page created
Pam mount‎ – pam_mount installation
User Madek has been very busy creating a bunch of new Spanish wiki page translations, including Xcompmgr (Español)‎, Xgl (Español), ATI (Español)‎, NVIDIA (Español) and Improve Pacman Performance (Español)‎,