Processing of flash-kernel_3.50_armel.changes

2015-11-17 Thread Debian FTP Masters
flash-kernel_3.50_armel.changes uploaded successfully to ftp-master.debian.org
along with the files:
  flash-kernel_3.50.dsc
  flash-kernel_3.50.tar.xz
  flash-kernel-installer_3.50_armel.udeb
  flash-kernel_3.50_armel.deb

Greetings,

Your Debian queue daemon (running on host coccia.debian.org)



Processing of flash-kernel_3.50_armel.changes

2015-11-17 Thread Debian FTP Masters
flash-kernel_3.50_armel.changes uploaded successfully to localhost
along with the files:
  flash-kernel_3.50.dsc
  flash-kernel_3.50.tar.xz
  flash-kernel-installer_3.50_armel.udeb
  flash-kernel_3.50_armel.deb

Greetings,

Your Debian queue daemon (running on host franck.debian.org)



Re: network-console, netboot, authorized_keys

2015-11-17 Thread Ian Campbell
On Sun, 2015-11-15 at 12:04 +0100, Łukasz Stelmach wrote:

> Q1. What is the difference between (the purpose of) network
> -console.cfg and netboot.cfg?

network-console images are the ones which run the installer as a ssh
server for headless systems. netboot is just the regular installer
which assumes a console and/or serial port.

> Q1-a. If I want to prepare a patch for d-i to support NSA325 should I
> modify netboot.cfg too?

It depends on whether a NSA325 typically has a console/serial or is
headless. It sounds like it is headless in which case network-console
is probably the one you want.

> Q1-b. Is there any tutorial or a checklist how to port d-i to a new
> platform?

Not that I know of, other than git log on the relevant components to
see what the last guy did I guess.

For headless you might also be interested in oldsys-preseed which tries
to extract things like network cfg from the factory firmware of various
platforms for the installer to use (makes it a bit easier to find the
headless device on your network etc).

I don't know about the authorized keys stuff you are trying to do,
sorry.

Ian.



flash-kernel_3.50_armel.changes ACCEPTED into unstable

2015-11-17 Thread Debian FTP Masters


Accepted:

-BEGIN PGP SIGNED MESSAGE-
Hash: SHA256

Format: 1.8
Date: Tue, 17 Nov 2015 07:11:13 +0100
Source: flash-kernel
Binary: flash-kernel flash-kernel-installer
Architecture: source armel
Version: 3.50
Distribution: unstable
Urgency: medium
Maintainer: Debian Install System Team 
Changed-By: Christian Perrier 
Description:
 flash-kernel - utility to make certain embedded devices bootable
 flash-kernel-installer - Make the system bootable (udeb)
Changes:
 flash-kernel (3.50) unstable; urgency=medium
 .
   [ Ian Campbell ]
   * Only remove directories which exist.
 .
   [ Karsten Merker ]
   * Add a machine db entry for the Iomega Iconnect.
Checksums-Sha1:
 f7a2ac6ef6730140874df257277a664d0fd2f07d 1853 flash-kernel_3.50.dsc
 383b9ae96060a9a9a565715f719171f30e691719 63176 flash-kernel_3.50.tar.xz
 5036e8ca65949443affbf239083e17b5ccd372fb 23600 
flash-kernel-installer_3.50_armel.udeb
 bdbbfafecec682cc35d13d82b5e84d503f532bd8 39046 flash-kernel_3.50_armel.deb
Checksums-Sha256:
 9bdaac884005af7008c3b8b4928527afcdffee4b101252d56af8b15bfeaecfe3 1853 
flash-kernel_3.50.dsc
 9d5cf1fc04e4844cbe934a8b749f9337b8fed48e9f6ff36bf405962aea6a550d 63176 
flash-kernel_3.50.tar.xz
 0e7e69dd333ce17ff9db1b3bafec0abc051e2018288e4071d26f45e587cfe5a0 23600 
flash-kernel-installer_3.50_armel.udeb
 cc6ed7804215d6129af4ffc364b78378471dca9920db38b9772610a98739829e 39046 
flash-kernel_3.50_armel.deb
Files:
 069a732456c485c6c1bb0ebf7817cb61 1853 utils optional flash-kernel_3.50.dsc
 1372fa9de7acd6ccb89681d6a36d607b 63176 utils optional flash-kernel_3.50.tar.xz
 3d0f225e2a30ff2bc369f0657b839d75 23600 debian-installer standard 
flash-kernel-installer_3.50_armel.udeb
 68b96fe3ebd4527d1c72de4387b17e9e 39046 utils optional 
flash-kernel_3.50_armel.deb

-BEGIN PGP SIGNATURE-
Version: GnuPG v1

iQIcBAEBCAAGBQJWSt87AAoJEIcvcCxNbiWooAIP/306r31q/MmStZLIhpMpgk3l
WilEyrknDC0WCrKpeEPExIgdBkf33LHFbRjWgF+81yzQcplWfM4EoRXwRcRQ882I
BJcQtNmIlJMopjOYZm7B2Yg5D09rjfdQ9hXvPNkeJieqCufsMLV+bLJmSNHVdvYb
DYvQOhXw7ZnXeXIaIAYSi03AO10n908rg81HZZxY+p8Y9To32nuQyDFZAdIdel/x
ZHkO7lI1ZfvMw8nZzVYJqpZag6sMVG72V65cTfNu4TMCeNrmkFclYMmYr8IX6nbc
Y3y6scUwwaokspPUUAkDrdAQyNHloYHCf6xGTDIgaSb9YELaY9SmOraIYlnj38uA
D/wBu/VRT7STFc2zZdnw4mK3HFOhMi7Wo+rftuHFK1/OYQCK+AXqS5soVGWeV0ig
0PZTtnfnT3YPFbs/FBaxIi9aDoPNt8LCX+7Fn72rlF2BVjOaTikYjTjFRlc0ALXw
InnmFSy3ZEmdjC7wcIvkBXy5q+R33R9C1WJ8AARQ1Iig1iQwaF5WKvbmH4RlMI6K
oYZ5Cu72sQDAGASFzNSLIO3PN2cUzqZb3njQfoVtDFDdf7zXQyiaRI3aawNDjgBn
/WGARh+Ytav6oua6oFZIRCx9dWOkZM60MRjB4EbvGZhb3ixeTopQmg6UHj+EImRJ
wtnxtuWGoo3JyoaQcnpo
=yxD5
-END PGP SIGNATURE-


Thank you for your contribution to Debian.



Re: network-console, netboot, authorized_keys

2015-11-17 Thread Łukasz Stelmach
Dnia 17 listopad 2015 o 10:07 Ian Campbell  napisał(a):
> On Sun, 2015-11-15 at 12:04 +0100, Łukasz Stelmach wrote:
>> Q1. What is the difference between (the purpose of) network
>> -console.cfg and netboot.cfg?
> 
> network-console images are the ones which run the installer as a ssh
> server for headless systems. netboot is just the regular installer
> which assumes a console and/or serial port.

Provided a proper network configuration is available. Either from a DHCP
server or as preseed parameters in kernel command line (console is needed
to input them).

>> Q1-a. If I want to prepare a patch for d-i to support NSA325 should I
>> modify netboot.cfg too?
> 
> It depends on whether a NSA325 typically has a console/serial or is
> headless. It sounds like it is headless in which case network-console
> is probably the one you want.

"Typically"[1], user needs to open the device and attach UART converter
to get the console. OK, I get it, network-console is a superset of
netboot anyway.

>> Q1-b. Is there any tutorial or a checklist how to port d-i to a new
>> platform?
> 
> Not that I know of, other than git log on the relevant components to
> see what the last guy did I guess.

"Relevant components" is a key phrase I hoped to find as a title of a
section in such tutorial.

> For headless you might also be interested in oldsys-preseed which tries
> to extract things like network cfg from the factory firmware
[...]

That's interesting. I will investigate it.

Thank you, for the information.

[1] http://zyxel.nas-central.org/wiki/Serial_port_%28NSA325%29
-- 
Miłego dnia,
Łukasz Stelmach



Re: More cdebconf improvements

2015-11-17 Thread Philipp Kern

On 2015-11-16 21:48, Christian PERRIER wrote:

Translations will naturally flow in as sonn as the changes are
committed to git, whether the package is uploaded or not.

Anyway, once the changes are there, and assuming the package is
uplaoded quickly (which I think is the best), other uploads will
happen from time to time when "enough" translation updates have piled
up ("enough" is a number that depends on my state of mind, mostly).

So, in short, don't worry about l10n, there is plenty of time for
updates.


Is that also the case for l10n-english review? Or is that something that 
committers should do in advance?


(I need to introduce three new templates in another package.)

Kind regards
Philipp Kern



Re: More cdebconf improvements

2015-11-17 Thread Christian Perrier

Le 17/11/2015 12:24, Philipp Kern a écrit :

On 2015-11-16 21:48, Christian PERRIER wrote:

Translations will naturally flow in as sonn as the changes are
committed to git, whether the package is uploaded or not.

Anyway, once the changes are there, and assuming the package is
uplaoded quickly (which I think is the best), other uploads will
happen from time to time when "enough" translation updates have piled
up ("enough" is a number that depends on my state of mind, mostly).

So, in short, don't worry about l10n, there is plenty of time for
updates.


Is that also the case for l10n-english review? Or is that something that
committers should do in advance?

(I need to introduce three new templates in another package.)


Ah, for sure, new texts should preferrably be reviewed before being 
committed (otherwise, the l10n-sync script picks them up, then updates 
translations...which translators will immediately "see" and therefore 
attempt to update).


A workaround is to commit them as non-translatable text (thus, the new 
functionality can be built and then gets more testing), then reviewed, 
then re-committed as translatable text ("_Description"). The risk there 
isforgetting about the non translatable text that has to be turned 
into translatable text




Bug#805291: preseed: Offer a way to override initrd-level preseeding with kernel command line preseeding

2015-11-17 Thread Philip Hands
Cyril Brulebois  writes:

> Hi,
>
> Raphaël Hertzog  (2015-11-16):
>> In Kali, we rely on initrd preseeding to set a bunch of Debconf entries
>> because it's the only sane way to ensure that we have those during netboot
>> too.
>> 
>> Unfortunately, it makes it very hard for end-users to change some of
>> those entries... editing initrd is not the best interface. It would
>> be very nice if there was a way to override such preseeding with the
>> (kernel) boot command line.
>> 
>> Right now env-preseed runs before initrd-preseed:
>> $ ls debian-installer-startup.d/
>> S30env-preseed  S35initrd-preseed  S60auto-install
>> 
>> I'm not sure what is the rationale for this order but if we don't want to
>> swap the order, then I would suggest that we introduce a new syntax that
>> let us do this operation.
>> 
>> I think inverting the order of both script would make a lot of sense. I
>> tried to find reasons not to but there is no intermediary script between
>> S30 and S35 and thus except for the precedence of preseeding, it has no
>> other impact AFAIK.
>> 
>> Otherwise if not possible I suggest "mirror/hostname!=http://my.mirror"; as
>> alternative syntax, somewhat mirroring the already existing ?= syntax
>> (with the exclamation mark conveying the notion of "forcing") but I'm
>> happy with any other syntax that you might prefer.
>> 
>> Phil & Cyril, please share your opinions/preference as I'll probably try
>> to implement this soonish.
>
> I'm afraid I don't have time to spend on figuring out all the possible
> consequences of such a move…

It seems like it ought to be mostly harmless, and probably ought to have
been like that all along (it certainly makes sense to me to have the
harder-to-set preseeds over-ridden by the easier-to-set ones).

You should probably give it a try and see if anything breaks. :-)

Cheers, Phil.
-- 
|)|  Philip Hands  [+44 (0)20 8530 9560]  HANDS.COM Ltd.
|-|  http://www.hands.com/http://ftp.uk.debian.org/
|(|  Hugo-Klemm-Strasse 34,   21075 Hamburg,GERMANY


signature.asc
Description: PGP signature


Processed: Re: Bug#647405: please allow pre-seeding for deb-src line

2015-11-17 Thread Debian Bug Tracking System
Processing control commands:

> tag -1 + patch
Bug #647405 [src:apt-setup] please allow pre-seeding for deb-src line
Added tag(s) patch.

-- 
647405: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=647405
Debian Bug Tracking System
Contact ow...@bugs.debian.org with problems



Bug#647405: please allow pre-seeding for deb-src line

2015-11-17 Thread Raphael Hertzog
Control: tag -1 + patch

Hello,

On Wed, 02 Nov 2011, Marc Haber wrote:
> Please consider allowing this, for example by a pre-seeding option
> d-i mirror/http/source boolean

I'm working on this feature as I would like to use it in Kali. I choose to
name the option "apt-setup/enable-source-repositories" but I can rename it
to something else if needed.

Please find attached a suggested patch. I'm currently testing it and
barring any objection I will likely commit it in a few days (assuming
my tests are succesful).

In the mean time, any review is welcome.

Cheers,
-- 
Raphaël Hertzog ◈ Debian Developer

Support Debian LTS: http://www.freexian.com/services/debian-lts.html
Learn to master Debian: http://debian-handbook.info/get/
>From 36c087a93529311a8dd5a38fdc4eba7c49b06d8e Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Rapha=C3=ABl=20Hertzog?= 
Date: Tue, 17 Nov 2015 17:43:48 +0100
Subject: [PATCH] Add a new apt-setup/enable-source-repositories question

This lets the user disable "deb-src" entries for network repositories that
are listed in /etc/apt/sources.list.

This work has been loosely based on the initial patch of Anthony F.
McInerney.

Closes: #647405
---
 debian/apt-setup-udeb.templates | 10 +
 debian/changelog|  8 +++
 generators/50mirror | 11 +-
 generators/50mirror.ubuntu  | 47 +++--
 generators/91security   |  8 ++-
 generators/92updates|  8 ++-
 generators/93backports  |  8 ++-
 7 files changed, 80 insertions(+), 20 deletions(-)

diff --git a/debian/apt-setup-udeb.templates b/debian/apt-setup-udeb.templates
index b106bf2..11a62af 100644
--- a/debian/apt-setup-udeb.templates
+++ b/debian/apt-setup-udeb.templates
@@ -105,6 +105,16 @@ _Description: Services to use:
  here does not cause any of them to be installed by default; it only
  allows you to manually select backports to use.
 
+Template: apt-setup/enable-source-repositories
+Type: boolean
+Default: true
+# :sl2:
+_Description: Enable source repositories in APT?
+ By default source repositories are listed in /etc/apt/sources.list (with
+ appropriate "deb-src" lines) so that "apt-get source" works. However, if
+ you don't need this feature, you can disable those entries and save some
+ bandwith during "apt-get update" operations.
+
 Template: apt-setup/multiarch
 Type: string
 Default: @MULTIARCH@
diff --git a/debian/changelog b/debian/changelog
index bd2df23..f24a5ee 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,11 @@
+apt-setup (1:0.103) UNRELEASED; urgency=medium
+
+  * Add a new apt-setup/enable-source-repositories question to let the
+user disable "deb-src" entries for network repositories that
+are listed in /etc/apt/sources.list. Closes: #647405
+
+ -- Raphaël Hertzog   Tue, 17 Nov 2015 17:36:33 +0100
+
 apt-setup (1:0.102) unstable; urgency=medium
 
   [ Raphaël Hertzog ]
diff --git a/generators/50mirror b/generators/50mirror
index 4cb6bc4..05e9941 100755
--- a/generators/50mirror
+++ b/generators/50mirror
@@ -186,6 +186,9 @@ while true; do
 			fi
 		fi
 		;;
+	3)
+		db_input low apt-setup/enable-source-repositories || true
+		;;
 	*)
 		break
 		;;
@@ -252,4 +255,10 @@ while [ ! "$done" ]; do
 	fi
 done
 
-echo "deb-src $protocol://$hostname$directory $codename $dists" >> $file
+deb_src="deb-src"
+db_get apt-setup/enable-source-repositories
+if [ "$RET" = false ]; then
+	deb_src="# deb-src"
+fi
+
+echo "$deb_src $protocol://$hostname$directory $codename $dists" >> $file
diff --git a/generators/50mirror.ubuntu b/generators/50mirror.ubuntu
index 2f7c643..e029764 100755
--- a/generators/50mirror.ubuntu
+++ b/generators/50mirror.ubuntu
@@ -66,6 +66,9 @@ while :; do
 db_input low apt-setup/partner || true
 			fi
 		;;
+		6)
+			db_input low apt-setup/enable-source-repositories || true
+		;;
 		*)
 			break
 		;;
@@ -96,6 +99,12 @@ hostname="$RET"
 db_get mirror/$protocol/directory
 directory="/${RET#/}"
 
+deb_src="deb-src"
+db_get apt-setup/enable-source-repositories
+if [ "$RET" = false ]; then
+	deb_src="# deb-src"
+fi
+
 # Awful hack. Source for ports architectures is only available on
 # archive.ubuntu.com, not ports.ubuntu.com.
 if [ "$hostname" = ports.ubuntu.com ]; then
@@ -123,32 +132,34 @@ PROPOSED="$RET"
 
 cat >> $file <> $file <> $file
 if db_get apt-setup/universe && [ "$RET" = true ]; then
-	COMMENT=
+	DEB='deb'
+	DEB_SRC="$deb_src"
 else
 	cat >> $file <> $file <> $file <> $file
 if db_get apt-setup/backports && [ "$RET" = true ]; then
-	COMMENT=
+	DEB='deb'
+	DEB_SRC="$deb_src"
 else
 	cat >> $file <> $file <> $file <> $file
 	if db_get apt-setup/partner && [ "$RET" = true ]; then
-		COMMENT=
+		DEB='deb'
+		DEB_SRC="$deb_src"
 	else
 		cat >> $file <> $file 

Bug#805291: preseed: Offer a way to override initrd-level preseeding with kernel command line preseeding

2015-11-17 Thread Raphael Hertzog
On Tue, 17 Nov 2015, Philip Hands wrote:
> It seems like it ought to be mostly harmless, and probably ought to have
> been like that all along (it certainly makes sense to me to have the
> harder-to-set preseeds over-ridden by the easier-to-set ones).
> 
> You should probably give it a try and see if anything breaks. :-)

Thanks, doing it right now on Kali as a testbed. I double checked the
installation manual to see if it had anything to say about the precedence
of the respective preseeding methods but I did not find anything relevant.

Cheers,
-- 
Raphaël Hertzog ◈ Debian Developer

Support Debian LTS: http://www.freexian.com/services/debian-lts.html
Learn to master Debian: http://debian-handbook.info/get/



Bug#647405: please allow pre-seeding for deb-src line

2015-11-17 Thread Christian PERRIER
Quoting Raphael Hertzog (hert...@debian.org):

> +Template: apt-setup/enable-source-repositories
> +Type: boolean
> +Default: true
> +# :sl2:
> +_Description: Enable source repositories in APT?
> + By default source repositories are listed in /etc/apt/sources.list (with
> + appropriate "deb-src" lines) so that "apt-get source" works. However, if
> + you don't need this feature, you can disable those entries and save some
> + bandwith during "apt-get update" operations.
> +

As the question is not asked during default installs (use of "low"
prio for debconf), I'd suggest using sublevel 3 for the newly
introduced templates --> s/:sl2:/:sl3:




signature.asc
Description: PGP signature


Re: network-console, netboot, authorized_keys

2015-11-17 Thread Łukasz Stelmach
Dnia 17 listopad 2015 o 20:20 Karsten Merker  napisał(a):
> 
> 
> On Tue, Nov 17, 2015 at 10:39:07AM +0100, Łukasz Stelmach wrote:
> > Dnia 17 listopad 2015 o 10:07 Ian Campbell  napisał(a):
> > 
> > >> Q1-b. Is there any tutorial or a checklist how to port d-i to a new
> > >> platform?
> > > 
> > > Not that I know of, other than git log on the relevant components to
> > > see what the last guy did I guess.
> > 
> > "Relevant components" is a key phrase I hoped to find as a title of a
> > section in such tutorial.
> 
> there is no step-by-step "porting d-i to a new (arm) platform"
> tutorial that I know of, but perhaps the following points can
> help you:
> 
> - Your platform must be supported by the mainline kernel. From a
>   quick glance, that doesn't seem to be the case yet. A quick
>   scan of the kernel sources shows support for the Zyxel nsa320,
>   but not for the nsa325.
> 
>   New boards get only added to the mainline kernel via
>   device-tree, so the first step would be writing a device-tree
>   for the board and getting it upstream.

That is being taken care of by Philipp Kirchhofer.

https://github.com/pkirchhofer/nsa325-linux-upstream

> - D-i uses modules udebs, which get built by the Debian kernel
>   package. You have to make sure that
> 
>   a) all necessary modules are enabled in the relevant kernel
>  config:
>  https://anonscm.debian.org/cgit/kernel/linux.git/tree/debian/config
>
>   b) the necessary modules get included into the relevant
>  module-udebs:
> 
> 
> https://anonscm.debian.org/cgit/kernel/linux.git/tree/debian/installer/armel/modules/

That is a good point. I've already discovered I need to enable
driver for an external RTC chip. 

BTW, until now I have used Debian kernel source obtained with
apt-get source and patched, of course to run on NSA325. I cloned
the above repo but I don't know exactly how to use it (I know there is
the debian directory and it should be surrounded by the kernel source). I
expect something like creating a smylink or bind-mounting the debian
directory from the repo to a kernel source tree should work but (how to
find out?)  which version (commit?) should I use?

> - Your system seems to be based on the kirkwood family of SoCs,

That is right.

>   i.e. it needs to use the "kirwood" subarchitecture of the
>   Debian kernel packages. The installer therefore needs a
>   mapping of the machine type to the subarchitecture, which
>   is done in libdebian-installer:
> 
>  
> https://anonscm.debian.org/cgit/d-i/libdebian-installer.git/tree/src/system/subarch-arm-linux.c#n26

Already working on it :-)
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=805223

> - For making the system bootable, the installer uses
>   flash-kernel. Flash-kernel has a machine database which
>   contains a stanza for each supported system and which provides
>   all necessary information to create and install a bootable
>   kernel and the corresponding initrd. How exactly that is done
>   is system-dependant. Some of the steps that can be performed
>   by flash-kernel include:
>   * putting kernel and initrd into some specific directory
>   * appending the proper device-tree for the platform to the
> kernel image (necessary on systems with old u-boot versions
> that cannot load a separate device-tree blob)
>   * generating uImages from native Linux kernels and initrds

Done. I've got a patch for debian-installer that produces uImage and
uInitrd. I serve via tftp and the system boots and runs fine except for
the RTC chip and detection of kernel flavour (subarch) to install (the
bug above). The rest seems to be working well enough to get a runnable
(booting requires some fiedling with kernel) system.

>   * installing system-specific u-boot scripts
>   * flashing the kernel and the initrd into some onboard flash
> chip

I don't want to touch the built-in NAND but rather install Debian on
a pendrive. As of now it seems u-boot can't detect the pendrive to read
kernel and initrd. I will think about it later.

>   The flash-kernel machine database:
>   https://anonscm.debian.org/cgit/d-i/flash-kernel.git/tree/db/all.db
> 
>   Documentation of the stanza format:
>   https://anonscm.debian.org/cgit/d-i/flash-kernel.git/tree/README#n76
> 
> HTH,

Yes that makes all things clearer. I hope I will be able to submit
patches for the relevant components soon.

-- 
Miłego dnia,
Łukasz Stelmach



Bug#647405: please allow pre-seeding for deb-src line

2015-11-17 Thread Raphael Hertzog
On Tue, 17 Nov 2015, Christian PERRIER wrote:
> As the question is not asked during default installs (use of "low"
> prio for debconf), I'd suggest using sublevel 3 for the newly
> introduced templates --> s/:sl2:/:sl3:

OK, fixed locally, as well as a small typo (bandwith -> bandwidth).

Cheers,
-- 
Raphaël Hertzog ◈ Debian Developer

Support Debian LTS: http://www.freexian.com/services/debian-lts.html
Learn to master Debian: http://debian-handbook.info/get/



Re: network-console, netboot, authorized_keys

2015-11-17 Thread Ben Hutchings
On Tue, 2015-11-17 at 22:48 +0100, Łukasz Stelmach wrote:
[...]
> 
> BTW, until now I have used Debian kernel source obtained with
> apt-get source and patched, of course to run on NSA325. I cloned
> the above repo but I don't know exactly how to use it (I know there is
> the debian directory and it should be surrounded by the kernel source). I
> expect something like creating a smylink or bind-mounting the debian
> directory from the repo to a kernel source tree should work but (how to
> find out?)  which version (commit?) should I use?
[...]

The kernel handbook explains how to do this:
https://kernel-handbook.alioth.debian.org/ch-common-tasks.html#s-common-official-vcs

Ben.

-- 
Ben Hutchings
It's easier to fight for one's principles than to live up to them.

signature.asc
Description: This is a digitally signed message part