What makes a flawless efficient productive system? What goes into all those small things that make sticking to one OS easier than the other? What is behind those simple little tricks that you get used to in one OS that helps you work so much more faster than in another new system?
I want a system that will just stay out of my way and not make me think about it. But to not force people to think about anything requires careful thought into what works in the background silently and smoothly. There is of course the universal kernel and the efficiency of code of all bits and pieces of software. But an easier and more non-technical "everyone" way to dissect why one distro offers better productivity than the other is to look at the packages.
I am going to take a look at Crunchbang's packages and list them so that I can understand why that distro comes close to being one of the most perfect distros I have worked on. As usual, the easiest way is to just dissect the hard work already done by the experts. Omns (or Grant Galbraith) in his omns project blog puts together Debian systems all the time and writes post-install scripts for them. I am just going to extract commands from these scripts and put them down here. The difference will be I want to write my own descriptions for each package, why they are essential to the system and what they bring to the table in terms of making that distro a bit more "intuitive", all based on my limited understanding of linux systems.
I guess the goal is to learn not by building linux from scratch but by pulling apart a system that works well. And since I am working backwards, I am hoping to go from the superficial layers to the deep, first looking at the packages that form and work with the graphical interface and immediate enduser functions going down to what comprises the system itself. I probably won't be done in one day or even one year, but hopefully, this will be a useful exercise in understanding a bit more about linux systems that are better than others.
From part II: XFCE 4.8 on Debian Squeeze
- Set Repositories
wget
mv /etc/apt/sources.list /etc/apt/sources.list.bak
cp sources.list /etc/apt/sources.list
I usually do:
sudo gedit /etc/apt/sources.list
So what is his sources list...
(% means commented out since the # means something else on
(e:strip))
-- DEBIAN SQUEEZE
deb
squeeze main contrib non-free
% deb-src
squeeze main contrib non-free
-- DEBIAN SQUEEZE UPDATES
deb
squeeze-updates main contrib non-free
% deb-src
squeeze-updates main contrib non-free
-- DEBIAN TESTING
deb
testing main contrib non-free
% deb-src
testing main contrib non-free
-- DEBIAN UNSTABLE
deb
unstable main contrib non-free
% deb-src
unstable main contrib non-free
-- DEBIAN EXPERIMENTAL
% deb
experimental main contrib non-free
% deb-src
experimental main contrib non-free
-- MOZILLA
% deb
squeeze-backports iceweasel-4.0
-- DEBIAN SECURITY
deb
squeeze/updates main non-free
% deb-src
squeeze/updates main non-free
-- DEBIAN MULTIMEDIA
deb
stable main non-free
-- DEBIAN BACKPORTS
deb
squeeze-backports main contrib non-free
So I don't like firefox. Never have. I have always been an Opera or currently a Chrome fan. The Mozilla-ice-weasel needs to go in my set up.
- Setting up preferences
wget
mv /etc/apt/preferences /etc/apt/preferences.bak
cp preferences /etc/apt/preferences
This is something I don't know about. Something called apt-pinning. Omns has done a post about it that I need to read about. For now these are the preferences in the file we just copied:
Package: *
Pin: release n=squeeze-backports
Pin-Priority: 1001
Package: *
Pin: release n=squeeze-updates
Pin-Priority: 950
Package: *
Pin: release n=squeeze
Pin-Priority: 900
Package: *
Pin: release n=stable
Pin-Priority: 800
Package: *
Pin: release a=testing
Pin-Priority: 700
Package: *
Pin: release a=unstable
Pin-Priority: 600
Package: *
Pin: release a=experimental
Pin-Priority: 200
- Add Keyrings
This is to prevent the system from whining about "uncertified" and "untrustworthy" sources.
wget
dpkg -i debian-multimedia-keyring_2010.12.26_all.deb
- Update Repositories and Upgrade packages
sudo apt-get update
sudo apt-get dist-upgrade
I have noticed that an upgrade always breaks stuff in Crunchbang Statler. Probably an indication that that exact package collection only works with some older Debian components and not with the newer updates. I still haven't learnt how to pinpoint the source of the break.
- Base packages and applications.
sudo apt-get install
xorg --> the graphical interface.
gksu --> launches programs in graphical interface
gdebi --> enables double-click *.deb and install ability
file-roller --> an unzip/unrar/untar utility (does not play well with evince)
% why do I need all the compression programs under the sun?
lha --> lzh archiver
lzop --> fast compression program
rzip --> compression program for large files
unalz --> De-archiver for .alz files
zoo --> zoo archive extractor
xz-utils --> XZ-format compression utilities
p7zip-full --> extract 7zip archives
alsa-base --> sound server. Maybe replace with pulseaudio
vlc --> video lan player
audacity --> audio player. vlc is fine really.
libdvdcss2 --> ?
lame --> mp3 codec
gimp --> high end graphics program similar to Photoshop
ttf-freefont --> better fonts rendering. Absolutely essential!
ttf-mscorefonts-installer --> M$shit fonts that are not so shit.
gcolor2 --> ?
agave --> ?
gedit --> The "linux notepad" I like so much!
fortunes --> ?
fortune-mod --> ? (I have read this is important as a notification machine but I am not really sure.)
gedit-plugins --> ? Not sure which plugins these are, the ons that bring along different code highlighting and syntax highlighting maybe. I just need some eye-popping bright ones that may not necessarily belong to R but make error-spotting easier.
evince --> pdf reader. ver 3.0 has annotation support but still ages behind wine + pdf xchange viewer.
gcalctool --> ? calculator?
iceweasel --> weasel I hate (firefox).
gftp -->?
xchat --> irc client. useful for naggy questions in realtime.
transmission-gtk --> torrent client.
wicd --> I think network manager is better in terms of offering a bigger variety of connections. 3G, VPN etc
cups --> something to do with the printer?
cups-pdf --> pdf printing?
system-config-printer --> ?
hpijs --> ?
hplip --> ?
dmz-cursor-theme --> ?
gtk2-engines-murrine -- ?
tango-icon-theme -- ? do I need this eye candy?
gnome-colors --> ?
bash-completion -- ?
screen -- ?
cowsay -- ?
figlet -- ?
scrot -- ?
whois -- ?
rpl -- ?
conky-all --> system monitor. Don´t need this as I only use the clock, that xfce can provide.
zenity -- ?
gparted --> partition disks. Do I really need this?
xfsprogs --> ?
reiserfsprogs --> ?
reiser4progs --> ?
jfsutils --> ?
synaptic --> package installer. Useful sometimes when you don't want to mess around with command line.
ttf-bitstream-vera --> font
ttf-dejavu --> font
ntfs-3g --> ?
pcmciautils --> ?
parcellite --> clipboard manager. I this messes up gnumeric.
fontconfig-config --> ?
libcairo2 --> ?
firmware-linux --> drivers but not sure which ones
firmware-iwlwifi --> I need to compile and install my dear realtek here, this won't help. Atleast not in the current kernel where my wireless has not been integrated.
libreoffice --> current openoffice avatar. I don't need all of it. Maybe only writer, impress and math
libreoffice-gtk --> ?libreoffice related
- Clean up downloaded packages
sudo apt-get clean
- Install Xfce 4.8
sudo apt-get update
sudo apt-get dist-upgrade
sudo apt-get -t testing install
xfce4
xfdesktop4
xfce4-power-manager
xfce4-screenshooter
xfce4-notifyd
thunar
thunar-archive-plugin
thunar-media-tags-plugin
thunar-thumbnailers
gvfs-backends
gvfs-bin
gvfs-fuse
xfce4-mixer
xfburn
terminator
- Clean up downloaded packages
sudo apt-get clean
reboot
Hmm.. quite a few question marks I need to fill out there.
Maybe I will get used to the spacing on the chiclet keyboard... My newer laptop has one too, which is the basic reason I started looking for similar keyboard because I like them so much.
I had a split keyboard for many years and loved it. The apple chiclet keyboard is the best - I use lots of different keyboards at client sites and those are consistently my favorite. I've always loved apple keyboards (since my first Apple II GS in the mid-80s). They're quiet, tight, easy to type with. My newest sony laptop has a chiclet keyboard (a really big feature for me on this purchase) and I like it a lot; it's much quieter, the keys are distinct and easy to find. I don't know why PC keyboards are so huge and noisy in comparison.
Hmm.. I need to try typing on your apple chiclet keyboard someday or borrow it for a day (like a keyboard swap experiment where you could experiment with one of mine instead).
A week to get up to speed (though pretty quickly I got even faster... its a keyboard for touch typing). Another week or two after that to be able to switch to a normal keyboard and back comfortably.
I type on a pretty quiet apple flat chicklet keyboard for up to 10 hours per day with no wrist pain.
I used to have pain years ago but realized I just couldn't type with my wrists bent. Then again I never had much wrist pain to begin with. The worst is typing a a laptop on my laptop.
how long did you take you to learn typing on that keyboard?
I am headed your way. And yes, the conclusion definitely is that noisier = less pain. There doesn't seem to be any other way.
Hand separation seems to be the key to avoid RSI. I am really horrible at typing so I am not there yet. But with the amount of typing that is right ahead, I might just end up with another radically keyboard before a couple months are out.
I own this keyboard, it looks bizarre, it is expensive, and sounds like a machine gun when I'm typing (mechanical scissor switch). But it's the only keyboard that I can type on for 8 hours straight without the slightest twinge of pain. :::link:::
:) well something that is scary but not so much that it stops one from working in theory could drive one... Of course if it is to scary then that is where the problem lies in creating bad work... Cause you just want to get done....
But the real problem with say playing music is that yes if you can find the right stuff it could help writing but at the same time it is something one must do instead of the writing so.....
Put a spider on my computer? Balance teacups while doing tough yoga poses? Seriously, I am bit scared of your potential as an authority figure.
;-)
I do play music a lot but lately I have been playing a ton of romantic-era piano and it's not very effective at drowning out anything but helps me synthesize ideas. The keyboard noise interferes with that then.
And what you say is true. If I am writing on a deadline and really need to finish whatever, the sounds hardly matter. Sounds only matter when I am trying to be creative and think about connections, hypotheses, ideas, new projects etc.
Sorry to be a wise ass a bit but I just thought of one thing that might again I say might fix this problem..... Crank So METAL!!!!! Or if you have to think and be in a place of zen sounds of the ocean? Point is if there are other sounds I'm guessing you won't notice the keyboard either that or put a big spider on the computer and it will distract you...... On a side note I have never thought of the sound of the keyboard ever and now since you wrote this post I can hear every key stroke.....