Some notes on getting things to work, based on experience with Ubuntu 12.04 in May 2012.
Really need to start with
sudo apt-get install mercurial
sudo apt-get install git git-cvs git-svn
sudo apt-get install subversion
The git-cvs and git-svn tools can be skipped when you are confident of never needing to deal with those tools ever again.
Also consider repository browsers
sudo apt-get install tortoisehg gitg
And git completion is nice:
git clone git://github.com/markgandolfo/git-bash-completion.git .gitbashcompletion
(My bash initialisation expects that directory name.)
Generate an SSH key and append the id_rsa.pub file to the .ssh/authorized_keys file on
- the local machines I will want to access, particularly
login - remote vc services:
bitbucket.org,sourceforge.net,github.com
It works to just use the version in the Software Center, i.e.,
sudo apt-get install dropbox
does the right thing. This is a necessary prelude as there are some useful files I’ve stored there.
All in the home directory.
-
hg clone ssh://login/hgrepos/homeconfigFollow up with
for i in .bash_envrc .bashintrc .bashrc .profile .xmobarrc .xsessionrc do ln -s homeconfig/$i . done ln -s homeconfig/mercurialrc .hgrc ln -s homeconfig/sshconfig .sshNote that it’s important to do the symbolic linking into homeconfig, rather than simply having the home directory be a mercurial repository. The latter makes hg too slow as it scans everything under $HOME to look for changed files etc.
-
hg clone ssh://login/hgrepos/texmf -
hg clone ssh://login/hgrepos/.emacs.d
-
get the haskell platform from the Software Center
-
install the necessary X11 and WM libraries:
sudo apt-get install libxinerama-dev libx11-dev libxft-dev gnome-panel -
Then
cabal install xmonad cabal install xmobar --flags="with_xft" -
Get my own xmonad configuration with
hg clone ssh://login/hgrepos/xmonad.d .xmonad.(Xmonad needs to bind
[M-S-q]tognome-session-quitin order to be able to logout cleanly.) -
Some files that need creating:
sudo vi /usr/share/xsessions/xmonad.desktop[Desktop Entry] Encoding=UTF-8 Name=XMonad Comment=Lightweight tiling window manager Exec=gnome-session --session=xmonad Icon=xmonad.png Type=XSessionand
sudo vi /usr/share/gnome-session/sessions/xmonad.session[GNOME Session] Name=Xmonad session RequiredComponents=gnome-settings-daemon;gnome-panel; RequiredProviders=windowmanager;notifications; DefaultProvider-windowmanager=xmonad DefaultProvider-notifications=notification-daemonThen you will be able to select xmonad on the login screen. Including the
gnome-panelin theRequiredComponentsgives a basic Gnome panel/launcher thing. Myxmobarsetup has that at the top of the screen, so move the Gnome panel to the bottom of the screen. Use[Alt Mouse-3]to configure the panel’s position and its attached widgets.
- Thunderbird
- installed by default, but user accounts need to be configured
- also need to get plug-ins such as External Editor
- get other add-ons from add-ons interface:
- Contact Photos
- Enigmail
- QuickText
- pain with fonts:
- go to Display/Fonts/Advanced. Set everything to Ubuntu Mono 16, or whatever other mono font you like. Then uncheck the the "Use fixed width font for plain text messages" option. That should help the aesthetics of message composition
- workrave (RSI prevention)
- with
sudo apt-get install workrave
- with
- Password Gorilla
- get from
githubwithgit clone [email protected]:mn200/gorilla.git - executable
gorilla.tclcan be symlinked to from$HOME/bin
- get from
- Emacs
- see Cassou’s emacs-snapshot page for information about getting emacs-24 before it’s officially released.
- LaTeX
- go to TeX Live to get the installation machinery
- get AucTeX through elpa (see
.emacs.d/init.el)
- Compilers
gccis already installed, it seemsg++,mltonboth available viaapt-get- polyml (also in dropbox; needs
g++)
- HOL
git clone [email protected]:mn200/HOL.git- build as usual
- pidgin
sudo apt-get install pidginln -s ~/Dropbox/linux-config/pidgin-configs ~/.purple- mute sounds in the Tools menu of the “Buddy List” window
- quodlibet
-
in
~/external-repos/, dohg clone https://quodlibet.googlecode.com/hg/ quodlibet -
also, do
svn checkout http://mutagen.googlecode.com/svn/trunk mutagen -
installation instructions (in quodlibet/quodlibet)
./setup.py build sudo ./setup.py installsimilarly for mutagen, putting both into
/usr/local/bin -
also symlink
ln -s ~/external-repos/quodlibet/plugins/ ~/.quodlibet/once the.quodlibetdirectory exists to get the queue-only plugin, which needs enabling. Then the order drop-down needs to change to “queue only”.
-
-
character set conversion:
sudo apt-get install recode -
GTK xmessage clone:
sudo apt-get install gxmessage -
markdown:
sudo apt-get install markdown -
ImageMagick tools:
sudo apt-get install imagemagick -
convmv(for renaming files with weirdo encodings):sudo apt-get install convmvFor example,
convmv --nfd -f utf8 -t utf8 filenamesis good for converting filenames so that they’ll work properly on a Mac.
- Libraries
- SML source-code:
scp -r gorton:lib/sml ~/lib(todo: put these on github)
- SML source-code:
- Configuring standard tools
gnome-terminal: turn off menus, change font to Ubuntu Mono-11
- Mount NICTA/ADE drives
sudo apt-get install cifs-utils- Append ADE drive info to
/etc/fstab(take from dropbox)
Turn it into reasonable HTML with
recode -d u8..h4 < xmonad-ubuntu12.04.md | markdown > xm.html
A better approach would be to embed the markdown output inside explicit <meta> tags around a UTF-8 declaration etc.