I recently got fed up with Ubuntu after switching from 10.10 to 11.10, as Unity rubbed me in a very bad way. Also, my netbook got slower, some personal modifications to my install got lost, and I couldn't figure out how to change settings to my liking ... and I saw Cancer kick a dog.
My first consideration was to migrate to xubuntu or kubuntu, but I couldn't quite figure out how to do that properly (it might be as simple as installing xubuntu-desktop or xfce4) in a clean way, so in the end I opted for installing #! (crunchbang) from scratch on my Lenovo S10-3s.
The setup itself is pretty easy using the graphical install tool from the live cd, with only one non sequitur: I opted for an encrypted LVM setup and wanted to keep /home on a separate partition. However, I still use the rest of the system for things (including databases and such) so I wanted to keep / and /home at about the same sizes. The #! install tool doesn't see things the same way and allocated 10GB for / and 240GB for /home. Not in itself a problem (though I don't why it's determined to make the decision for me instead of asking me) however the GUI tool then made it nigh impossible for me to make the setup I wanted. In fact, I didn't get the setup I wanted for the only way I could see to make it happen would be to go through the manual partition setup - which I didn't fancy at the time (too big a chance to screw up). In effect it forced me onto a one-partition setup - and that's silly.
Other than that the install went flawlessly. My version of #! is Statler and most things in it work out of the box on my S10-3s. There are a couple of things that I needed to do, to get things perfect.
The Broadcom Corporation BCM4313 isn't properly recognized by the installed drivers, so in order to get wifi working I needed to install firmware-brcm80211. After that it seemed to work fine, although it still had a problem of the wireless network not being enabled upon startup. This was fixed with a startup script in /etc/rc.local - basically it just does
# in /etc/rc.local /usr/bin/nmcli nm wifi on
As NetworkManager is handling my wireless card anyway and it just needs to be told to switch wireless on, this is all that's needed to have wireless running after bootup.
I came across another problem though: on connecting to wireless networks, if a connection was not made, the computer would freeze. Mouse was still working but the desktop was non-responsive. In order to solve this, I updated the wireless network card to the firmware drivers of testing as well.
sudo apt-get install -t testing firmware-brcm-80211
The synaptics touchpad of the S10-3s only allowed left clicking (not through the actual button though) and scrolling - no right click. This was fixed by adding Debian testing sources and pinning the kernel to testing - which currently means version 126.96.36.199. After installing this and rebooting, the touchpad worked just fine.
After install I had a small problem with the sound, in that when I attached headphones the sound would still play through the normal speakers. This issue was fixed by adding a line to /etc/modprobe.d/alsa-base.conf
# in /etc/modprobe.d/alsa-base.conf options snd-hda-intel model=thinkpad
After adding this and rebooting, sound would play as intended - either through headphones or the normal speakers. However, #! comes with a rather annoying use of the system speaker to make a bell sound. To turn this off, you can use the script found at Dandekar's. The most important parts are (I believe):
# in /etc/modprobe.d/alsa-base-blacklist.conf blacklist pcspkr # in ~/.config/openbox/autostart.sh xset b off &
You'll essentially blacklist the driver for the pc-speaker and stop X from making the bell sound.
Getting #! to run on my Lenovo S10-3s was not as easy as getting ubuntu to run on it (although I had a couple of problems first time round there too). However, it hasn't taken me long to make things work and the list of things to fix is pretty small - the biggest issue being the wireless card.
Overall my system seems faster and leaner - even though I used the #! welcome script to install a ton of package right after install. I'm definitely looking forward to getting into #! - so far there's nothing I dislike but a lot of things I'm pretty happy about, such as the lack of Unity.