[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#741029: equivs control file for redo(1) implementation



I created a file that can be used with the files linked at
<http://news.dieweltistgarnichtso.net/bin/redo-sh.html> and the
equivs-build(1) command to build a Debian package for redo. I have
attached it to this email and also made it available on my web site
<http://news.dieweltistgarnichtso.net/bin/redo-sh.ctl>.

I have several questions regarding the equivs-build approach:

• Is it allowed by Debian policy to package a program this way? My
  implementation of redo(1) only consists of Bourne Shell scripts and
  can be packaged as-is without invoking a compiler or similar program.

• How do I find the version of coreutils my program depends on? It needs
  cut(1), md5sum(1), mv(1), rm(1), sh(1) and stat(1). Is it possible to
  do a binary search on all past Debian packages to find out which one
  lacked any of these binaries?

• Should I explain why my program suggests coreutils in the description?
  The answer is that it has more functionality on systems with shuf(1).

• How can I specify that the program is licensed AGPL-3 or later?

• Do I need to write a man page for every redo utility?

• Should redo utilities that should only be invoked from redo build
  scripts (“dofiles”) reside in “/usr/lib/redo”, not in “/usr/bin”?

• What is good or bad about the current description of the package?
-- 
Nils Dagsson Moskopp // erlehmann
<http://dieweltistgarnichtso.net>

Attachment: pgp61uu65MM1D.pgp
Description: PGP signature

### Commented entries have reasonable defaults.
### Uncomment to edit them.
# Source: <source package name; defaults to package name>
Section: devel
Priority: optional
Homepage: http://news.dieweltistgarnichtso.net/bin/redo-sh.html
Standards-Version: 3.9.2

Package: redo-sh
Version: 2016-03-02
Maintainer: Nils Dagsson Moskopp <nils+redo@dieweltistgarnichtso.net>
# Pre-Depends: <comma-separated list of packages>
Depends: coreutils | busybox | busybox-static
# Recommends: <comma-separated list of packages>
Suggests: coreutils
Provides: redo
# Replaces: <comma-separated list of packages>
Architecture: all
# Multi-Arch: <one of: foreign|same|allowed>
# Copyright: AGPL-3
# Changelog: <changelog file; defaults to a generic changelog>
# Readme: <README.Debian file; defaults to a generic one>
# Extra-Files: <comma-separated list of additional files for the doc directory>
Files: redo /usr/bin
 redo-always /usr/bin
 redo-dot /usr/bin
 redo-ifchange /usr/bin
 redo-ifcreate /usr/bin
 redo-ood /usr/bin
 redo-targets /usr/bin
 redo-sources /usr/bin
 redo-stamp /usr/bin
Description: Top-down software build system, Bourne Shell implementation
 redo is a utility which controls the generation of target files from
 source files. It determines automatically which targets need to be
 (re)created and issues commands to (re)create them. In contrast to
 the widely-used make program, redo records dependencies during the
 build. redo build scripts (“dofiles”) are shell scripts by default,
 but can be written in other languages.
 .
 For the design, see “Rebuilding target files when source files have
 changed” from Daniel J. Bernstein (DJB) <http://cr.yp.to/redo.html>.
 .
 This package contains an implementation of redo in Bourne Shell. For
 an overview of other redo implementations, see “Introduction to redo”
 <http://homepage.ntlworld.com/jonathan.deboynepollard/FGA/introduction-to-redo.html>.

Reply to: