diff options
Diffstat (limited to 'doc/from-debstd')
-rw-r--r-- | doc/from-debstd | 63 |
1 files changed, 63 insertions, 0 deletions
diff --git a/doc/from-debstd b/doc/from-debstd new file mode 100644 index 00000000..86f29dce --- /dev/null +++ b/doc/from-debstd @@ -0,0 +1,63 @@ +Converting from debstd to debhelper: +----------------------------------- + +Debhelper is designed to be mostly backwards compatible to debstd. I say +mostly because I haven't made debhelper handle everything that debstd does +yet, and in a few cases, debhelper does things differently (and I hope, +better). + +In general, you can switch over to using debhelper as follows. In your +debian/rules, you currently will have some lines that read something like +this: + + debstd CHANGES TODO README + dpkg-gencontrol + dpkg --build debian/tmp .. + +Debhelper comes with a command called dh_debstd that mimics the behavior of +debstd, by calling various debhelper commands. So in the root directory of +your package you are converting, run: + + dh_debstd CHANGES TODO README --verbose --no-act + +Notice the parallel to the debstd command above, I just added +"--verbose --noact" to the end. This will make dh_debstd output a list of +commands that it thinks will emulate what debstd would have done, without +actually doing anything to your package. The list will look similar to this: + + dh_installdirs + dh_installdocs TODO README + dh_installexamples + dh_installchangelogs CHANGES + dh_installmenu + dh_installcron + dh_installmanpages + dh_movefiles + dh_strip + dh_compress + dh_fixperms + dh_suidregister + dh_shlibdeps + dh_gencontrol + dh_makeshlibs + dh_installdeb + dh_md5sums + dh_builddeb + +Now copy that output into debian/rules, replacing the debstd command, as +well as any dpkg-gencontrol and dpkg --build commands. + +Finally, debstd automatically modified postinst, postrm, etc scripts. Some +of the debhelper apps do that too, but they do it differently. Debstd just +appends its commands to the end of the script. Debhelper requires that you +insert a tag into your scripts, that will tell debhelper where to insert +commands. So if you have postinst, postrm, etc scripts, add a line reading +"#DEBHELPER#" to the end of them. + +Once you think it's all set up properly, do a test build of your package. If +it works ok, I recommend that you compare the new package and the old +debstd-generated package very closely. Pay special attention to the +postinst, postrm, etc scripts, and make sure that the new package contains +all the same files as the old, with the same permissions. + +-- Joey Hess <joeyh@master.debian.org> |