summaryrefslogtreecommitdiff
path: root/README
blob: 387a994dafab98f3852a773d642f7f7f1ff7d506 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
This is Sean Whitton's dotfiles.  I try to make it clear when stuff
was written by me, and when it was taken from elsewhere.  Stuff I've
written is GPL v3 or any later versions published by the FSF.

The master branch should work on most hosts, and host-specific
configurations for host `host.domain' live in the branch `host'.  All
such host branches have master as their parent and are rebased onto
master.

This restriction is to make usage less complex, even if it results in
some patches being duplicated between multiple host branches (that
aren't suitable for master).  My dotfiles are too important for the
repository to require time-consuming, complex rebase operations.  I
use ~/src/dotfiles/bin/git-dotfiles-rebase to do the rebasing.

On host branches, following the host-specific patches, there may be commits
destined for master.  This is because hosts without access to my PGP keys
cannot update master.  These commits are reviewed and cherry-picked onto
master from time to time.  Batching the reviews like this is more efficient
than continually creating temporary branches, mailing patches to myself, etc.,
and usually there is no hurry to install patches on master because the changes
are relevant mostly for just that one host.

Configuration here should be mostly passive.  Use Consfigurator to set up
other things.  E.g. i3 config is here but ~/.dmrc and ~/.config/autostart,
which actually start up i3 etc., would be set up by consfig.  This makes
cloning this repo into HOME on arbitrary machines less intrusive.

================================
  Minimal system requirements
================================

POSIX.2 shell and utilities

================================
Recommended pre-installed extras
================================

git; Perl 5/7; Git::Wrapper

================================
         Minimal setup
================================

1. Get the repo:

   % git clone https://git.spwhitton.name/dotfiles $HOME/src/dotfiles
   
2. Run bootstrap script:

   % $HOME/src/dotfiles/bin/bstraph