[wiki] [official] Expanded document about customising dwm using a Mercurial Queue. To be continued soon. || f

From: <hg_AT_suckless.org>
Date: Mon, 18 Aug 2008 15:10:07 +0100 (BST)

changeset: 123:b2b9ce87c8ec
tag: tip
user: f.e.negroni_AT_gmail.com
date: Sun Aug 17 23:38:09 2008 +0100
files: dwm/customisation/myconfigh.md
description:
Expanded document about customising dwm using a Mercurial Queue. To be continued soon.


diff -r 9724504139d5 -r b2b9ce87c8ec dwm/customisation/myconfigh.md
--- a/dwm/customisation/myconfigh.md Sun Aug 17 14:03:01 2008 -0400
+++ b/dwm/customisation/myconfigh.md Sun Aug 17 23:38:09 2008 +0100
_AT_@ -1,6 +1,29 @@
-How to maintain your own config.h as a patch queue in Mercurial
-===============================================================
+#How to maintain your own config.h as a patch queue in Mercurial
 
 *blame [Filippo Erik Negroni](mailto:f dot e dot negroni at googlemail dot com>) about this document*
 
-This article will explain how to maintain your own config.h as a set of patches in a Mercurial Queue.
+This article will explain how to maintain your own `config.h` and `config.mk` files as a set of patches in a Mercurial Queue.
+
+##Background
+
+When customising dwm, it is assumed the user edits `config.h` and `config.mk`
+`config.h` is not generated from `config.def.h` when running `make`. The user must copy `config.def.h` in `config.h` before `make` can build its targets.
+This raises the interesting situation where our customised `config.h` does not match changes to `config.def.h` in future releases of dwm. We must therefore take care of diff'ing `config.h` and `config.def.h` manually so as to keep our customised `config.h` in sync with the project.
+
+When building dwm, the user is expected to edit `config.mk` to customise the install location and other parameters, such as C compiler flags.
+It is unfortunately suffering from the same risk of a customised `config.mk` not being in sync with the one in the main distribution. One has to remember to diff the original and customised `config.mk` to make sure the changes are in sync.
+
+##Automating our customisations
+
+Since *suckless.org* uses Mercurial as its source control system, it is nice to know that we can use Mercurial to manage our customisations. This makes it easy to create an incremental series of patchsets (queue) that we can also distribute to others.
+
+An example of such queue can be found at [fnegronidwm](http://sharesource.org/project/fnegronidwm/wiki/): I created it as a Mercurial Queue repository so that I can manage the patches and keep them in sync with the main dwm distribution.
+
+The rest of this document will explain how I created my queue for dwm.
+It will hopefully help others do the same and also improve the quality of the patches by making sure that they are tagged and in sync with the main repository of dwm.
+
+##Tutorial
+
+### Clone dwm's main repository
+
+To be continued...
Received on Mon Aug 18 2008 - 16:10:07 CEST

This archive was generated by hypermail 2.3.0 : Thu Sep 13 2012 - 19:30:24 CEST