Commit 75904005 authored by Bernhard Link's avatar Bernhard Link

Import reprepro_5.2.0.orig.tar.gz

parents ea3eecd6 16189f8f
2018-08-26 Bernhard R. Link <brlink@debian.org>
* mark .lz support as deprecated
2018-08-12 Bernhard R. Link <brlink@debian.org>
* allow to set Signed-By header via conf/distributions
* add _listcodenames command (based on work from Benjamin Drung)
* drop "FILE LOCATION" headers from Contents files
* multiple manpage fixes
(thanks to Paul Wise, Simon Kainz, Christoph Biedl)
2017-03-02 Bernhard R. Link <brlink@debian.org>
* handle .asc files in source files better
(thanks to Marc Laue)
2017-01-31 <flapflap@riseup.net>
* allow '+' character in method-URI
2016-12-28 Bernhard R. Link <brlink@debian.org> 2016-12-28 Bernhard R. Link <brlink@debian.org>
* improve error handling when extracting .deb file contents * improve error handling when extracting .deb file contents
......
This diff is collapsed.
Updates between 5.1.1 and 5.2.0:
- mark .lz support as deprecated
- add _listcodenames command
- allow to set Signed-By header via conf/distributions
- add support for .asc files in source packages
- some documentation improvements
- allow '+' character in method-URI
Updates between 5.1.0 and 5.1.1: Updates between 5.1.0 and 5.1.1:
- improve error handling when extracting .deb file contents - improve error handling when extracting .deb file contents
- fix many spelling mistakes - fix many spelling mistakes
......
#! /bin/sh #! /bin/sh
# Wrapper for compilers which do not understand '-c -o'. # Wrapper for compilers which do not understand '-c -o'.
scriptversion=2012-10-14.11; # UTC scriptversion=2018-03-07.03; # UTC
# Copyright (C) 1999-2014 Free Software Foundation, Inc. # Copyright (C) 1999-2018 Free Software Foundation, Inc.
# Written by Tom Tromey <tromey@cygnus.com>. # Written by Tom Tromey <tromey@cygnus.com>.
# #
# This program is free software; you can redistribute it and/or modify # This program is free software; you can redistribute it and/or modify
...@@ -17,7 +17,7 @@ scriptversion=2012-10-14.11; # UTC ...@@ -17,7 +17,7 @@ scriptversion=2012-10-14.11; # UTC
# GNU General Public License for more details. # GNU General Public License for more details.
# #
# You should have received a copy of the GNU General Public License # You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>. # along with this program. If not, see <https://www.gnu.org/licenses/>.
# As a special exception to the GNU General Public License, if you # As a special exception to the GNU General Public License, if you
# distribute this file as part of a program that contains a # distribute this file as part of a program that contains a
...@@ -255,7 +255,8 @@ EOF ...@@ -255,7 +255,8 @@ EOF
echo "compile $scriptversion" echo "compile $scriptversion"
exit $? exit $?
;; ;;
cl | *[/\\]cl | cl.exe | *[/\\]cl.exe ) cl | *[/\\]cl | cl.exe | *[/\\]cl.exe | \
icl | *[/\\]icl | icl.exe | *[/\\]icl.exe )
func_cl_wrapper "$@" # Doesn't return... func_cl_wrapper "$@" # Doesn't return...
;; ;;
esac esac
...@@ -339,9 +340,9 @@ exit $ret ...@@ -339,9 +340,9 @@ exit $ret
# Local Variables: # Local Variables:
# mode: shell-script # mode: shell-script
# sh-indentation: 2 # sh-indentation: 2
# eval: (add-hook 'write-file-hooks 'time-stamp) # eval: (add-hook 'before-save-hook 'time-stamp)
# time-stamp-start: "scriptversion=" # time-stamp-start: "scriptversion="
# time-stamp-format: "%:y-%02m-%02d.%02H" # time-stamp-format: "%:y-%02m-%02d.%02H"
# time-stamp-time-zone: "UTC" # time-stamp-time-zone: "UTC0"
# time-stamp-end: "; # UTC" # time-stamp-end: "; # UTC"
# End: # End:
#! /bin/sh #! /bin/sh
# depcomp - compile a program generating dependencies as side-effects # depcomp - compile a program generating dependencies as side-effects
scriptversion=2013-05-30.07; # UTC scriptversion=2018-03-07.03; # UTC
# Copyright (C) 1999-2014 Free Software Foundation, Inc. # Copyright (C) 1999-2018 Free Software Foundation, Inc.
# This program is free software; you can redistribute it and/or modify # This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by # it under the terms of the GNU General Public License as published by
...@@ -16,7 +16,7 @@ scriptversion=2013-05-30.07; # UTC ...@@ -16,7 +16,7 @@ scriptversion=2013-05-30.07; # UTC
# GNU General Public License for more details. # GNU General Public License for more details.
# You should have received a copy of the GNU General Public License # You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>. # along with this program. If not, see <https://www.gnu.org/licenses/>.
# As a special exception to the GNU General Public License, if you # As a special exception to the GNU General Public License, if you
# distribute this file as part of a program that contains a # distribute this file as part of a program that contains a
...@@ -783,9 +783,9 @@ exit 0 ...@@ -783,9 +783,9 @@ exit 0
# Local Variables: # Local Variables:
# mode: shell-script # mode: shell-script
# sh-indentation: 2 # sh-indentation: 2
# eval: (add-hook 'write-file-hooks 'time-stamp) # eval: (add-hook 'before-save-hook 'time-stamp)
# time-stamp-start: "scriptversion=" # time-stamp-start: "scriptversion="
# time-stamp-format: "%:y-%02m-%02d.%02H" # time-stamp-format: "%:y-%02m-%02d.%02H"
# time-stamp-time-zone: "UTC" # time-stamp-time-zone: "UTC0"
# time-stamp-end: "; # UTC" # time-stamp-end: "; # UTC"
# End: # End:
#!/bin/sh #!/bin/sh
# install - install a program, script, or datafile # install - install a program, script, or datafile
scriptversion=2014-09-12.12; # UTC scriptversion=2018-03-11.20; # UTC
# This originates from X11R5 (mit/util/scripts/install.sh), which was # This originates from X11R5 (mit/util/scripts/install.sh), which was
# later released in X11R6 (xc/config/util/install.sh) with the # later released in X11R6 (xc/config/util/install.sh) with the
...@@ -271,15 +271,18 @@ do ...@@ -271,15 +271,18 @@ do
fi fi
dst=$dst_arg dst=$dst_arg
# If destination is a directory, append the input filename; won't work # If destination is a directory, append the input filename.
# if double slashes aren't ignored.
if test -d "$dst"; then if test -d "$dst"; then
if test "$is_target_a_directory" = never; then if test "$is_target_a_directory" = never; then
echo "$0: $dst_arg: Is a directory" >&2 echo "$0: $dst_arg: Is a directory" >&2
exit 1 exit 1
fi fi
dstdir=$dst dstdir=$dst
dst=$dstdir/`basename "$src"` dstbase=`basename "$src"`
case $dst in
*/) dst=$dst$dstbase;;
*) dst=$dst/$dstbase;;
esac
dstdir_status=0 dstdir_status=0
else else
dstdir=`dirname "$dst"` dstdir=`dirname "$dst"`
...@@ -288,6 +291,11 @@ do ...@@ -288,6 +291,11 @@ do
fi fi
fi fi
case $dstdir in
*/) dstdirslash=$dstdir;;
*) dstdirslash=$dstdir/;;
esac
obsolete_mkdir_used=false obsolete_mkdir_used=false
if test $dstdir_status != 0; then if test $dstdir_status != 0; then
...@@ -324,14 +332,16 @@ do ...@@ -324,14 +332,16 @@ do
# is incompatible with FreeBSD 'install' when (umask & 300) != 0. # is incompatible with FreeBSD 'install' when (umask & 300) != 0.
;; ;;
*) *)
# $RANDOM is not portable (e.g. dash); use it when possible to # Note that $RANDOM variable is not portable (e.g. dash); Use it
# lower collision chance # here however when possible just to lower collision chance.
tmpdir=${TMPDIR-/tmp}/ins$RANDOM-$$ tmpdir=${TMPDIR-/tmp}/ins$RANDOM-$$
trap 'ret=$?; rmdir "$tmpdir/a/b" "$tmpdir/a" "$tmpdir" 2>/dev/null; exit $ret' 0 trap 'ret=$?; rmdir "$tmpdir/a/b" "$tmpdir/a" "$tmpdir" 2>/dev/null; exit $ret' 0
# As "mkdir -p" follows symlinks and we work in /tmp possibly; so # Because "mkdir -p" follows existing symlinks and we likely work
# create the $tmpdir first (and fail if unsuccessful) to make sure # directly in world-writeable /tmp, make sure that the '$tmpdir'
# that nobody tries to guess the $tmpdir name. # directory is successfully created first before we actually test
# 'mkdir -p' feature.
if (umask $mkdir_umask && if (umask $mkdir_umask &&
$mkdirprog $mkdir_mode "$tmpdir" && $mkdirprog $mkdir_mode "$tmpdir" &&
exec $mkdirprog $mkdir_mode -p -- "$tmpdir/a/b") >/dev/null 2>&1 exec $mkdirprog $mkdir_mode -p -- "$tmpdir/a/b") >/dev/null 2>&1
...@@ -434,8 +444,8 @@ do ...@@ -434,8 +444,8 @@ do
else else
# Make a couple of temp file names in the proper directory. # Make a couple of temp file names in the proper directory.
dsttmp=$dstdir/_inst.$$_ dsttmp=${dstdirslash}_inst.$$_
rmtmp=$dstdir/_rm.$$_ rmtmp=${dstdirslash}_rm.$$_
# Trap to clean up those temp files at exit. # Trap to clean up those temp files at exit.
trap 'ret=$?; rm -f "$dsttmp" "$rmtmp" && exit $ret' 0 trap 'ret=$?; rm -f "$dsttmp" "$rmtmp" && exit $ret' 0
...@@ -500,9 +510,9 @@ do ...@@ -500,9 +510,9 @@ do
done done
# Local variables: # Local variables:
# eval: (add-hook 'write-file-hooks 'time-stamp) # eval: (add-hook 'before-save-hook 'time-stamp)
# time-stamp-start: "scriptversion=" # time-stamp-start: "scriptversion="
# time-stamp-format: "%:y-%02m-%02d.%02H" # time-stamp-format: "%:y-%02m-%02d.%02H"
# time-stamp-time-zone: "UTC" # time-stamp-time-zone: "UTC0"
# time-stamp-end: "; # UTC" # time-stamp-end: "; # UTC"
# End: # End:
#! /bin/sh #! /bin/sh
# Common wrapper for a few potentially missing GNU programs. # Common wrapper for a few potentially missing GNU programs.
scriptversion=2013-10-28.13; # UTC scriptversion=2018-03-07.03; # UTC
# Copyright (C) 1996-2014 Free Software Foundation, Inc. # Copyright (C) 1996-2018 Free Software Foundation, Inc.
# Originally written by Fran,cois Pinard <pinard@iro.umontreal.ca>, 1996. # Originally written by Fran,cois Pinard <pinard@iro.umontreal.ca>, 1996.
# This program is free software; you can redistribute it and/or modify # This program is free software; you can redistribute it and/or modify
...@@ -17,7 +17,7 @@ scriptversion=2013-10-28.13; # UTC ...@@ -17,7 +17,7 @@ scriptversion=2013-10-28.13; # UTC
# GNU General Public License for more details. # GNU General Public License for more details.
# You should have received a copy of the GNU General Public License # You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>. # along with this program. If not, see <https://www.gnu.org/licenses/>.
# As a special exception to the GNU General Public License, if you # As a special exception to the GNU General Public License, if you
# distribute this file as part of a program that contains a # distribute this file as part of a program that contains a
...@@ -101,9 +101,9 @@ else ...@@ -101,9 +101,9 @@ else
exit $st exit $st
fi fi
perl_URL=http://www.perl.org/ perl_URL=https://www.perl.org/
flex_URL=http://flex.sourceforge.net/ flex_URL=https://github.com/westes/flex
gnu_software_URL=http://www.gnu.org/software gnu_software_URL=https://www.gnu.org/software
program_details () program_details ()
{ {
...@@ -207,9 +207,9 @@ give_advice "$1" | sed -e '1s/^/WARNING: /' \ ...@@ -207,9 +207,9 @@ give_advice "$1" | sed -e '1s/^/WARNING: /' \
exit $st exit $st
# Local variables: # Local variables:
# eval: (add-hook 'write-file-hooks 'time-stamp) # eval: (add-hook 'before-save-hook 'time-stamp)
# time-stamp-start: "scriptversion=" # time-stamp-start: "scriptversion="
# time-stamp-format: "%:y-%02m-%02d.%02H" # time-stamp-format: "%:y-%02m-%02d.%02H"
# time-stamp-time-zone: "UTC" # time-stamp-time-zone: "UTC0"
# time-stamp-end: "; # UTC" # time-stamp-end: "; # UTC"
# End: # End:
This diff is collapsed.
...@@ -219,7 +219,7 @@ retvalue aptmethod_newmethod(struct aptmethodrun *run, const char *uri, const ch ...@@ -219,7 +219,7 @@ retvalue aptmethod_newmethod(struct aptmethodrun *run, const char *uri, const ch
method->child = -1; method->child = -1;
method->status = ams_notstarted; method->status = ams_notstarted;
p = uri; p = uri;
while (*p != '\0' && (*p == '_' || *p == '-' || while (*p != '\0' && (*p == '_' || *p == '-' || *p == '+' ||
(*p>='a' && *p<='z') || (*p>='A' && *p<='Z') || (*p>='a' && *p<='z') || (*p>='A' && *p<='Z') ||
(*p>='0' && *p<='9'))) { (*p>='0' && *p<='9'))) {
p++; p++;
......
...@@ -201,6 +201,7 @@ retvalue changes_parsefileline(const char *fileline, /*@out@*/filetype *result_t ...@@ -201,6 +201,7 @@ retvalue changes_parsefileline(const char *fileline, /*@out@*/filetype *result_t
} else { } else {
enum compression c; enum compression c;
const char *eoi; const char *eoi;
bool issignature = false;
/* without those, it gets more complicated. /* without those, it gets more complicated.
* It's not .deb or .udeb, so most likely a * It's not .deb or .udeb, so most likely a
...@@ -209,6 +210,10 @@ retvalue changes_parsefileline(const char *fileline, /*@out@*/filetype *result_t ...@@ -209,6 +210,10 @@ retvalue changes_parsefileline(const char *fileline, /*@out@*/filetype *result_t
/* if it uses a known compression, things are easy, /* if it uses a known compression, things are easy,
* so try this first: */ * so try this first: */
if (l > 4 && memcmp(versionstart + l - 4, ".asc", 4) == 0 ) {
issignature = true;
l -= 4;
}
c = compression_by_suffix(versionstart, &l); c = compression_by_suffix(versionstart, &l);
p = versionstart + l; p = versionstart + l;
...@@ -220,6 +225,9 @@ retvalue changes_parsefileline(const char *fileline, /*@out@*/filetype *result_t ...@@ -220,6 +225,9 @@ retvalue changes_parsefileline(const char *fileline, /*@out@*/filetype *result_t
} else if (l > 4 && strncmp(p-4, ".tar", 4) == 0) { } else if (l > 4 && strncmp(p-4, ".tar", 4) == 0) {
type = fe_TAR; type = fe_TAR;
eoi = p - 4; eoi = p - 4;
} else if (issignature) {
/* only .tar.* files are allowed to have .asc files: */
issignature = false;
} else if (l > 5 && strncmp(p-5, ".diff", 5) == 0) { } else if (l > 5 && strncmp(p-5, ".diff", 5) == 0) {
type = fe_DIFF; type = fe_DIFF;
eoi = p - 5; eoi = p - 5;
...@@ -275,6 +283,8 @@ retvalue changes_parsefileline(const char *fileline, /*@out@*/filetype *result_t ...@@ -275,6 +283,8 @@ retvalue changes_parsefileline(const char *fileline, /*@out@*/filetype *result_t
return RET_ERROR; return RET_ERROR;
} }
if (issignature)
type = fe_SIG;
} else { } else {
/* everything else is assumed to be source */ /* everything else is assumed to be source */
checkfilename = true; checkfilename = true;
......
...@@ -9,6 +9,7 @@ typedef enum { ...@@ -9,6 +9,7 @@ typedef enum {
fe_UNKNOWN=0, fe_UNKNOWN=0,
fe_DEB, fe_UDEB, fe_DEB, fe_UDEB,
fe_DSC, fe_DIFF, fe_ORIG, fe_TAR, fe_DSC, fe_DIFF, fe_ORIG, fe_TAR,
fe_SIG,
fe_ALTSRC, fe_ALTSRC,
fe_BYHAND, fe_LOG, fe_CHANGES, fe_BYHAND, fe_LOG, fe_CHANGES,
fe_BUILDINFO fe_BUILDINFO
...@@ -16,7 +17,7 @@ typedef enum { ...@@ -16,7 +17,7 @@ typedef enum {
#define FE_PACKAGE(ft) ((ft) == fe_DEB || (ft) == fe_UDEB || (ft) == fe_DSC) #define FE_PACKAGE(ft) ((ft) == fe_DEB || (ft) == fe_UDEB || (ft) == fe_DSC)
#define FE_BINARY(ft) ((ft) == fe_DEB || (ft) == fe_UDEB) #define FE_BINARY(ft) ((ft) == fe_DEB || (ft) == fe_UDEB)
#define FE_SOURCE(ft) ((ft) == fe_DIFF || (ft) == fe_ORIG || (ft) == fe_TAR || (ft) == fe_DSC || (ft) == fe_UNKNOWN || (ft) == fe_ALTSRC) #define FE_SOURCE(ft) ((ft) == fe_DIFF || (ft) == fe_ORIG || (ft) == fe_TAR || (ft) == fe_DSC || (ft) == fe_UNKNOWN || (ft) == fe_ALTSRC || (ft) == fe_SIG)
struct hash_data; struct hash_data;
retvalue changes_parsefileline(const char * /*fileline*/, /*@out@*/filetype *, /*@out@*/char ** /*result_basename*/, /*@out@*/struct hash_data *, /*@out@*/struct hash_data *, /*@out@*/char ** /*result_section*/, /*@out@*/char ** /*result_priority*/, /*@out@*/architecture_t *, /*@out@*/char ** /*result_name*/); retvalue changes_parsefileline(const char * /*fileline*/, /*@out@*/filetype *, /*@out@*/char ** /*result_basename*/, /*@out@*/struct hash_data *, /*@out@*/struct hash_data *, /*@out@*/char ** /*result_section*/, /*@out@*/char ** /*result_priority*/, /*@out@*/architecture_t *, /*@out@*/char ** /*result_name*/);
......
...@@ -883,7 +883,6 @@ static retvalue changes_check(const struct distribution *distribution, const cha ...@@ -883,7 +883,6 @@ static retvalue changes_check(const struct distribution *distribution, const cha
havealtsrc = true; havealtsrc = true;
} }
} }
if (havetar && !haveorig && havediff) { if (havetar && !haveorig && havediff) {
fprintf(stderr, fprintf(stderr,
"I don't know what to do having a .tar.gz not being a .orig.tar.gz and a .diff.gz in '%s'!\n", "I don't know what to do having a .tar.gz not being a .orig.tar.gz and a .diff.gz in '%s'!\n",
...@@ -905,6 +904,36 @@ static retvalue changes_check(const struct distribution *distribution, const cha ...@@ -905,6 +904,36 @@ static retvalue changes_check(const struct distribution *distribution, const cha
return RET_ERROR; return RET_ERROR;
} }
/* check if signatures match files signed: */
for (e = changes->files ; e != NULL ; e = e->next) {
size_t el;
struct fileentry *f;
if (e->type != fe_SIG)
continue;
el = strlen(e->basename);
if (el <= 4 || memcmp(e->basename + el - 4, ".asc", 4) != 0)
continue;
for (f = changes->files ; f != NULL ; f = f->next) {
size_t fl = strlen(f->basename);
if (el != fl + 4)
continue;
if (memcmp(e->basename, f->basename, fl) != 0)
continue;
break;
}
if (f == NULL) {
fprintf(stderr,
"Signature file without file to be signed: '%s'!\n",
e->basename);
return RET_ERROR;
}
}
return r; return r;
} }
......
...@@ -825,7 +825,7 @@ retvalue config_geturl(struct configiterator *iter, const char *header, char **r ...@@ -825,7 +825,7 @@ retvalue config_geturl(struct configiterator *iter, const char *header, char **r
return RET_ERROR; return RET_ERROR;
} }
p = value; p = value;
while (*p != '\0' && (*p == '_' || *p == '-' || while (*p != '\0' && (*p == '_' || *p == '-' || *p == '+' ||
(*p>='a' && *p<='z') || (*p>='A' && *p<='Z') || (*p>='a' && *p<='z') || (*p>='A' && *p<='Z') ||
(*p>='0' && *p<='9'))) { (*p>='0' && *p<='9'))) {
p++; p++;
......
This diff is collapsed.
...@@ -2,7 +2,7 @@ dnl ...@@ -2,7 +2,7 @@ dnl
dnl Process this file with autoconf to produce a configure script dnl Process this file with autoconf to produce a configure script
dnl dnl
AC_INIT(reprepro, 5.1.1, brlink@debian.org) AC_INIT(reprepro, 5.2.0, brlink@debian.org)
AC_CONFIG_SRCDIR(main.c) AC_CONFIG_SRCDIR(main.c)
AC_CONFIG_AUX_DIR(ac) AC_CONFIG_AUX_DIR(ac)
AM_INIT_AUTOMAKE([-Wall -Werror -Wno-portability]) AM_INIT_AUTOMAKE([-Wall -Werror -Wno-portability])
......
...@@ -55,6 +55,7 @@ static retvalue distribution_free(struct distribution *distribution) { ...@@ -55,6 +55,7 @@ static retvalue distribution_free(struct distribution *distribution) {
free(distribution->butautomaticupgrades); free(distribution->butautomaticupgrades);
free(distribution->label); free(distribution->label);
free(distribution->description); free(distribution->description);
free(distribution->signed_by);
free(distribution->deb_override); free(distribution->deb_override);
free(distribution->udeb_override); free(distribution->udeb_override);
free(distribution->dsc_override); free(distribution->dsc_override);
...@@ -398,6 +399,7 @@ CFallSETPROC(distribution, butautomaticupgrades) ...@@ -398,6 +399,7 @@ CFallSETPROC(distribution, butautomaticupgrades)
CFtruthSETPROC2(distribution, readonly, readonly) CFtruthSETPROC2(distribution, readonly, readonly)
CFallSETPROC(distribution, label) CFallSETPROC(distribution, label)
CFallSETPROC(distribution, description) CFallSETPROC(distribution, description)
CFallSETPROC(distribution, signed_by)
CFsignwithSETPROC(distribution, signwith) CFsignwithSETPROC(distribution, signwith)
CFfileSETPROC(distribution, deb_override) CFfileSETPROC(distribution, deb_override)
CFfileSETPROC(distribution, udeb_override) CFfileSETPROC(distribution, udeb_override)
...@@ -464,6 +466,7 @@ static const struct configfield distributionconfigfields[] = { ...@@ -464,6 +466,7 @@ static const struct configfield distributionconfigfields[] = {
CF("DebIndices", distribution, deb), CF("DebIndices", distribution, deb),
CF("DebOverride", distribution, deb_override), CF("DebOverride", distribution, deb_override),
CF("Description", distribution, description), CF("Description", distribution, description),
CF("Signed-By", distribution, signed_by),
CF("DscIndices", distribution, dsc), CF("DscIndices", distribution, dsc),
CF("DscOverride", distribution, dsc_override), CF("DscOverride", distribution, dsc_override),
CF("FakeComponentPrefix", distribution, fakecomponentprefix), CF("FakeComponentPrefix", distribution, fakecomponentprefix),
......
...@@ -43,7 +43,7 @@ struct distribution { ...@@ -43,7 +43,7 @@ struct distribution {
* (and only for sanity checks) */ * (and only for sanity checks) */
/*@null@*/char *suite, *version; /*@null@*/char *suite, *version;
/*@null@*/char *origin, *label, *description, /*@null@*/char *origin, *label, *description,
*notautomatic, *butautomaticupgrades; *notautomatic, *butautomaticupgrades, *signed_by;
/* What architectures and components are there */ /* What architectures and components are there */
struct atomlist architectures, components; struct atomlist architectures, components;
/* which update rules to use */ /* which update rules to use */
......
# Makefile.in generated by automake 1.15 from Makefile.am. # Makefile.in generated by automake 1.16.1 from Makefile.am.
# @configure_input@ # @configure_input@
# Copyright (C) 1994-2014 Free Software Foundation, Inc. # Copyright (C) 1994-2018 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation # This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it, # gives unlimited permission to copy and/or distribute it,
...@@ -264,8 +264,8 @@ Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status ...@@ -264,8 +264,8 @@ Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
*config.status*) \ *config.status*) \
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
*) \ *) \
echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \
esac; esac;
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
...@@ -326,7 +326,10 @@ ctags CTAGS: ...@@ -326,7 +326,10 @@ ctags CTAGS:
cscope cscopelist: cscope cscopelist:
distdir: $(DISTFILES) distdir: $(BUILT_SOURCES)
$(MAKE) $(AM_MAKEFLAGS) distdir-am
distdir-am: $(DISTFILES)
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
list='$(DISTFILES)'; \ list='$(DISTFILES)'; \
......
...@@ -122,7 +122,7 @@ This is permanent data, no cache. One has almost to regenerate the whole ...@@ -122,7 +122,7 @@ This is permanent data, no cache. One has almost to regenerate the whole
repository when this is lost. repository when this is lost.
.TP .TP
.B \-\-listdir \fIlistdir\fP .B \-\-listdir \fIlistdir\fP
Sets the directory where downloads it downloads indices to when importing Sets the directory where it downloads indices to when importing
from other repositories. This is temporary data and can be safely deleted from other repositories. This is temporary data and can be safely deleted
when not in an update run. when not in an update run.
...@@ -387,6 +387,7 @@ If the program is not found or is \fBNONE\fP (all-uppercase) then uncompressing ...@@ -387,6 +387,7 @@ If the program is not found or is \fBNONE\fP (all-uppercase) then uncompressing
lz files will not be possible. lz files will not be possible.
The program has to accept the compressed file as stdin and write The program has to accept the compressed file as stdin and write
the uncompressed file into stdout. the uncompressed file into stdout.
Note that .lz support is \fBDEPRECATED\fP and will be removed in the future.
.TP .TP
.BI \-\-list\-max " count" .BI \-\-list\-max " count"
Limits the output of \fBlist\fP, \fBlistmatched\fP and \fBlistfilter\fP to the first \fIcount\fP Limits the output of \fBlist\fP, \fBlistmatched\fP and \fBlistfilter\fP to the first \fIcount\fP
...@@ -920,6 +921,8 @@ copied. ...@@ -920,6 +921,8 @@ copied.
.B restoresrc \fIcodename\fP \fIsnapshot\fP \fIsource-epackage\fP \fR[\fP\fIversions\fP\fR]\fP .B restoresrc \fIcodename\fP \fIsnapshot\fP \fIsource-epackage\fP \fR[\fP\fIversions\fP\fR]\fP
.TP .TP
.B restorefilter \fIdestination-codename\fP \fIsnapshot\fP \fIformula\fP .B restorefilter \fIdestination-codename\fP \fIsnapshot\fP \fIformula\fP
.TP
.B restorematched \fIdestination-codename\fP \fIsnapshot\fP \fIglob\fP
Like the copy commands, but do not copy from another distribution, Like the copy commands, but do not copy from another distribution,
but from a snapshot generated with \fBgensnapshot\fP. but from a snapshot generated with \fBgensnapshot\fP.
Note that this blindly trusts the contents of the files in your \fBdists/\fP Note that this blindly trusts the contents of the files in your \fBdists/\fP
...@@ -1138,6 +1141,9 @@ List what compressions format can be uncompressed and how. ...@@ -1138,6 +1141,9 @@ List what compressions format can be uncompressed and how.
Use builtin or external uncompression to uncompress the specified Use builtin or external uncompression to uncompress the specified
file of the specified format into the specified target. file of the specified format into the specified target.
.TP .TP
.BR _listcodenames
Print - on per line - the codenames of all configured distributions.
.TP
.B _listconfidentifiers \fIidentifier\fP \fR[\fP \fIdistributions...\fP \fR]\fP .B _listconfidentifiers \fIidentifier\fP \fR[\fP \fIdistributions...\fP \fR]\fP
Print - one per line - all identifiers of subdatabases as derived from the Print - one per line - all identifiers of subdatabases as derived from the
configuration. configuration.
...@@ -1241,24 +1247,32 @@ Also if a component starts with it, its directory in the dists dir ...@@ -1241,24 +1247,32 @@ Also if a component starts with it, its directory in the dists dir
is shortened by this. is shortened by this.
.br .br
So \fB So \fB
Codename: bla/updates Codename: bla/updates
Suite: foo/updates Suite: foo/updates
FakeComponentPrefix: updates FakeComponentPrefix: updates
Components: main bad Components: main bad\fP
\fP will create a Release file with \fB
will create a Release file with \fB
Codename: bla Codename: bla
Suite: foo Suite: foo
Components: updates/main updates/bad Components: updates/main updates/bad\fP
\fP in it, but otherwise nothing is changed, while\fB
in it, but otherwise nothing is changed, while\fB
Codename: bla/updates Codename: bla/updates
Suite: foo/updates Suite: foo/updates
FakeComponentPrefix: updates FakeComponentPrefix: updates
Components: updates/main updates/bad Components: updates/main updates/bad\fP
\fP will also create a Release file with \fB
will also create a Release file with \fB
Codename: bla Codename: bla
Suite: foo Suite: foo
Components: updates/main updates/bad Components: updates/main updates/bad\fP
\fP but the packages will actually be in the components
but the packages will actually be in the components
\fBupdates/main\fP and \fBupdates/bad\fP, \fBupdates/main\fP and \fBupdates/bad\fP,
most likely causing the same file using duplicate storage space. most likely causing the same file using duplicate storage space.
...@@ -1612,6 +1626,12 @@ the section (usually \fBbyhand\fP), ...@@ -1612,6 +1626,12 @@ the section (usually \fBbyhand\fP),
the priority (usually only \fB\-\fP), the priority (usually only \fB\-\fP),
the filename in the changes file and the filename in the changes file and
the full filename (with processincoming in the secure TempDir). the full filename (with processincoming in the secure TempDir).
.TP
.B Signed\-By
This optional field is simply copied into the Release files.
It is used to tell apt which keys to trust for this Release
in the future.
(see SignWith for how to tell reprepro whether and how to sign).
.SS conf/updates .SS conf/updates
.TP .TP
.B Name .B Name
...@@ -1771,51 +1791,83 @@ See the description of the listfilter command for the semantics ...@@ -1771,51 +1791,83 @@ See the description of the listfilter command for the semantics
of formulas. of formulas.
.TP .TP
.B FilterList\fR, \fPFilterSrcList .B FilterList\fR, \fPFilterSrcList
These take at least two arguments: These two options each take at least two arguments:
The first one is the default action when something is not found in the list, The first argument is the fallback (default) action.
then a list of filenames (relative to All following arguments are treated as file names of lists.
The filenames are considered to be relative to
.B \-\-confdir\fR, .B \-\-confdir\fR,
if not starting with if not starting with
.BR ~/ ", " +b/ ", " +c/ " or " / " )" .BR ~/ ", " +b/ ", " +c/ " or " / "."
in the format of dpkg \-\-get\-selections and only packages listed in