Moving your Dreamwidth installation to use Github

These instructions are for dreamhacks; those running your own instances I trust that you can modify to fit. This also assumes that you've gone through the "Set up git" instructions on https://help.github.com/articles/set-up-git

= stop all workers and the server =

killall worker-manager stop-apache

= move your old $LJHOME aside (don't delete it though) =

mv $LJHOME $LJHOME-xx

= on github, fork dreamwidth's dw-free and dw-nonfree repositories =

These are the two Dreamwidth repositories:


 * https://github.com/dreamwidth/dw-free
 * https://github.com/dreamwidth/dw-nonfree

Here's a quick overview of how the repositories are arranged:


 * dw-free is the main repository and goes into $LJHOME
 * other repositories will go into $LJHOME/ext
 * personal config files go into $LJHOME/ext/local
 * Contents of $LJHOME will be live when you start the server
 * Contents of $LJHOME/ext will be used automatically (no syncing)

Now it's time to set things up:

= set up dw-free =

git clone https://github.com/USERNAME/dw-free.git $LJHOME git remote add dreamwidth https://github.com/dreamwidth/dw-free mkdir $LJHOME/ext cd $LJHOME/ext
 * 1) clone a copy of the repository onto your machine
 * 1) and let's make it aware of the dreamwidth repository so we can grab updates later
 * 1) now set up the folder for external repositories / modules

= for dev servers (not clone sites) set up dw-nonfree =

git clone https://github.com/USERNAME/dw-nonfree.git git remote add dreamwidth https://github.com/dreamwidth/dw-nonfree

mkdir --parents local/etc echo "highest" > local/.dir_scope cp $LJHOME-xx/etc/config* local/etc/
 * 1) copy over your config files, and tell them to take priority over config files
 * 2) in any of the repos

= run checkconfig =

cd $LJHOME bin/checkconfig.pl

= non-dreamhack users: =


 * install .deb packages if given
 * install any modules without .deb packages via cpan (theSchwartz)
 * check any personal scripts you have to make sure they aren't affected by the directory config change
 * note: you won't need to run "dw sync" / "bin/cvsreport.pl --sync --cvs/--live" or anything of the sort anymore

= start server again =

start-apache