Skip to content

Commit

Permalink
Added installation script.
Browse files Browse the repository at this point in the history
  • Loading branch information
David Brewer committed Jun 23, 2012
1 parent a13313d commit 22a42d6
Show file tree
Hide file tree
Showing 2 changed files with 44 additions and 5 deletions.
18 changes: 13 additions & 5 deletions README.md
Expand Up @@ -9,18 +9,26 @@ Overview
Installation
------------

### Checkout Repository ###
### Caveats ###

### Short version ###
This process is based on the assumption that you have not yet installed xmonad. If you HAVE already installed it, whether this will work is dependent on how you installed it:
* If you installed xmonad using the standard Ubuntu repositories, you should back up any existing configuration before proceeding, but otherwise this should still work.
* If you installed xmonad from source using Haskell tools such as Cabal, my installation process will most likely NOT work for you. The Ubuntu packages may conflict with your from-source installation. You should proceed with extreme caution in this case.

Finally, this whole process is intended for someone who likes to mess with their system configuration and is comfortable at the command line. I'm guessing you probably wouldn't have found this if that wasn't the case.

### Checkout repository ###

As your first step, you should check out this github repository or download an archive of the files. The contents of the repository should be placed in your home directory in a folder called ".xmonad". Note that if you have already installed xmonad, this directory will already exist! If you want to be able to revert to your existing configuration, you should rename this directory to something like ".xmonad-original".

### Installation: the short version ###

I've provided a script which performs all the remaining operations lined out the installation instructions. PLEASE skim the rest of the installation section to see what the script does before running it. If you are happy with all the steps described, you can run the script as a shortcut. If there's anything you want to tweak during installation, you may be better off running the steps manually.

~/.xmonad/install-xmonad

If you prefer to perform these steps manually to understand what they are doing, read on.

(TODO: implement the script.)

### Install packages ###

This xmonad configuration uses a variety of different packages. Some of them are required for xmonad, others are not specific to xmonad but are core parts of the overall desktop configuration, and others are simply tools which I use frequently enough that my default configuration runs them on startup.
Expand All @@ -38,7 +46,7 @@ If you prefer to pick and choose, the following packages can be omitted while st

To launch our xmonad session, we want to be able to pick it from the normal list of sessions available in Ubuntu's login screen, which is called "Unity Greeter". To make our customized version of Xmonad show up in the list, you will need to copy the file xmonad.desktop to the location where the greeter expects to find definitions of all the available sessions. You might also want to back up the default xmonad desktop session in case you want to revert later on.

sudo mv /usr/share/xessions/xmonad.desktop /usr/share/xsessions/xmonad.desktop.original
sudo mv /usr/share/xsessions/xmonad.desktop /usr/share/xsessions/xmonad.desktop.original
sudo cp ~/.xmonad/xmonad.desktop /usr/share/xsessions

Ubuntu's packages do not include any icon for xmonad when showing it in the login screen. This means its icon defaults to a plain white circle. But, no worries... I've got you covered. Just copy the custom xmonadbadge into the appropriate location for a nice consistent login experience.
Expand Down
31 changes: 31 additions & 0 deletions install-xmonad
@@ -0,0 +1,31 @@
#!/bin/bash
#
# Installation script which setup up an Ubuntu Precise machine to use this
# xmonad configuration.
#
# WARNING!!!
# * This has only been tested on a limited number of machines running
# Ubuntu 12.04 64-bit.
# * This is not a sophisticated installation script by any stretch
# of the imagination.
# * I take no responsibility if this overwrites any configuration settings
# or otherwise messes up your system.
#
# Please review the readme file to find out exactly what it does and does not
# do. Or, visit the repository for more information:
# https://github.com/davidbrewer/xmonad-ubuntu-conf
#
# Author: David Brewer

echo "Installing required packages..."
sudo apt-get install xmonad libghc-xmonad-dev libghc-xmonad-contrib-dev xmobar xcompmgr nitrogen stalonetray moreutils synapse ssh-askpass-gnome thunar terminator remmina

echo "Creating xmonad xsession configuration..."
sudo mv /usr/share/xsessions/xmonad.desktop /usr/share/xsessions/xmonad.desktop.original
sudo cp ~/.xmonad/xmonad.desktop /usr/share/xsessions
sudo cp ~/.xmonad/images/custom_xmonad_badge.png /usr/share/unity-greeter

echo "Linking to customized gnome 2 configuration..."
mv ~/.gtkrc-2.0 ~/gtkrc-2.0.original
ln -s .xmonad/.gtkrc-2.0 ~/.gtkrc-2.0

0 comments on commit 22a42d6

Please sign in to comment.