Bug#724491: localepurge: debconf-communicate -fnoninteractive localepurge does not work

2013-09-25 Thread Steven Shiau


On 09/25/2013 12:35 PM, Niels Thykier wrote:
 Ah, this should still work for preseeding localepurge.
   However, you can only do it /before/ installing localepurge (or if you
 remove /etc/locale.nopurge before running dpkg-reconfigure).
Hi Niels,
Thanks for the quick response. However, could you please tell how to
preseed localepurge?
Before installing localepurge, if I run:
echo set localepurge/nopurge | debconf-communicate
It will give me:
10 localepurge/nopurge doesn't exist

And since I can not edit a /etc/locale.nopurge before install
localepurge, how could I preseed that?
Thanks in advance.

Steven.


-- 
Steven Shiau steven _at_ nchc org tw steven _at_ stevenshiau org
National Center for High-performance Computing, Taiwan.
http://www.nchc.org.tw
Public Key Server PGP Key ID: 4096R/47CF935C
Fingerprint: 0240 1FEB 695D 7112 62F0  8796 11C1 12DA 47CF 935C


-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Bug#724491: localepurge: debconf-communicate -fnoninteractive localepurge does not work

2013-09-25 Thread Niels Thykier
On 2013-09-25 08:24, Steven Shiau wrote:
 
 
 On 09/25/2013 12:35 PM, Niels Thykier wrote:
 Ah, this should still work for preseeding localepurge.
   However, you can only do it /before/ installing localepurge (or if you
 remove /etc/locale.nopurge before running dpkg-reconfigure).
 Hi Niels,
 Thanks for the quick response. However, could you please tell how to
 preseed localepurge?
 Before installing localepurge, if I run:
 echo set localepurge/nopurge | debconf-communicate
 It will give me:
 10 localepurge/nopurge doesn't exist
 

Mmm, honestly I have never done much of that so I can only be of limited
help here.  By the looks of it though, it seems that you should use
debconf-set-selections.  Apparently, debconf-communicate is for
debugging-purposes.  Note that debconf-det-selections does seem to use
a slightly different format (and defaults to marking things as seen).

From what I can tell, the existing practice seem to be migrating values
from an already configured host like:


  hostA$ debconf-get-selections |\
 grep localepurge\/  localepurge.preseed

  hostB$ debconf-set-selections  localepurge.preseed


Disclaimer: Haven't tried it - just saw it in [0] so I assumed it just
works(tm) like that.

It is possible that the people on the debian-user lists can help you
more with this[1].

 And since I can not edit a /etc/locale.nopurge before install
 localepurge, how could I preseed that?
 Thanks in advance.
 
 Steven.
 
 

Actually, you should be able to just install an /etc/locale.nopurge and
localepurge should pick it up just fine.  It might not skip the
questions in this case though (because they won't be marked as seen).

~Niels

[0] http://projects.puppetlabs.com/projects/1/wiki/debian_preseed_patterns

[1] https://lists.debian.org/debian-user/

For other languages, see https://lists.debian.org/users.html
 (and look/search for debian-user-$lang)


-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Bug#724491: localepurge: debconf-communicate -fnoninteractive localepurge does not work

2013-09-25 Thread Steven Shiau


On 09/25/2013 02:46 PM, Niels Thykier wrote:
 Mmm, honestly I have never done much of that so I can only be of limited
 help here.  By the looks of it though, it seems that you should use
 debconf-set-selections.  Apparently, debconf-communicate is for
 debugging-purposes.  Note that debconf-det-selections does seem to use
 a slightly different format (and defaults to marking things as seen).
Hi Niels,
Cool! Thanks for telling me to use debconf-set-selections. It works
well. Awesome!
By doing this:
debconf-set-selections EOF
localepurge localepurge/dontbothernew   boolean false
localepurge localepurge/mandelete   boolean true
localepurge localepurge/none_selected   boolean false
localepurge localepurge/nopurge multiselect en, en_US.UTF-8
localepurge localepurge/quickndirtycalc boolean true
localepurge localepurge/remove_no   boolean false
localepurge localepurge/use-dpkg-featureboolean false
localepurge localepurge/showfreedspace  boolean true
localepurge localepurge/verbose boolean false
EOF

I can preseed the localepurge.
Appreciate! Thank you very much!

Steven.
-- 
Steven Shiau steven _at_ nchc org tw steven _at_ stevenshiau org
National Center for High-performance Computing, Taiwan.
http://www.nchc.org.tw
Public Key Server PGP Key ID: 4096R/47CF935C
Fingerprint: 0240 1FEB 695D 7112 62F0  8796 11C1 12DA 47CF 935C


-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Bug#724491: localepurge: debconf-communicate -fnoninteractive localepurge does not work

2013-09-24 Thread Steven Shiau
Package: localepurge
Version: 0.7.3
Severity: normal

Dear Maintainer,
After upgrading to localepurge 0.7.3, the following commands do not work:
=
debconf-communicate -fnoninteractive localepurge EOF
set localepurge/nopurge ca_ES.UTF-8, de_DE.UTF-8
fset localepurge/nopurge seen true
EOF

dpkg-reconfigure --priority=low --unseen-only localepurge
=
Before I run this script, 
Running:
grep -A3 localepurge/nopurge /var/cache/debconf/config.dat

shows me:
=
Name: localepurge/nopurge
Template: localepurge/nopurge
Value: en, en_US.UTF-8
Owners: localepurge
Flags: seen
=

Now after I run that script, then following command:
grep -A3 localepurge/nopurge /var/cache/debconf/config.dat

still shows me:
=
Name: localepurge/nopurge
Template: localepurge/nopurge
Value: en, en_US.UTF-8
Owners: localepurge
Flags: seen
=

I expect it should be changed as
Value: ca_ES.UTF-8, de_DE.UTF-8

However, if I downgrade localepurge to 0.6.3, this issue is gone.
Did I miss something for the new version of localepurge?
Thanks.

Steven.

-- System Information:
Debian Release: jessie/sid
  APT prefers unstable
  APT policy: (500, 'unstable')
Architecture: i386 (i686)

Kernel: Linux 3.10-3-686-pae (SMP w/1 CPU core)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/bash

Versions of packages localepurge depends on:
ii  debconf [debconf-2.0]  1.5.51
ii  locales2.17-93
ii  procps 1:3.3.8-2
ii  ucf3.0027+nmu1

localepurge recommends no packages.

Versions of packages localepurge suggests:
pn  bleachbit  none
pn  debfoster  none
pn  deborphan  none

-- debconf information:
  localepurge/none_selected: false
  localepurge/mandelete: true
  localepurge/showfreedspace: true
* localepurge/nopurge: en, en_US.UTF-8
* localepurge/use-dpkg-feature: false
  localepurge/dontbothernew: false
  localepurge/remove_no:
  localepurge/verbose: false
  localepurge/quickndirtycalc: true


-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Bug#724491: localepurge: debconf-communicate -fnoninteractive localepurge does not work

2013-09-24 Thread Niels Thykier
Control: tags -1 moreinfo

On 2013-09-24 11:11, Steven Shiau wrote:
 Package: localepurge
 Version: 0.7.3
 Severity: normal
 
 Dear Maintainer,

Hi,

 After upgrading to localepurge 0.7.3, the following commands do not work:
 =
 debconf-communicate -fnoninteractive localepurge EOF
 set localepurge/nopurge ca_ES.UTF-8, de_DE.UTF-8
 fset localepurge/nopurge seen true
 EOF
 
 [...]
 
 I expect it should be changed as
 Value: ca_ES.UTF-8, de_DE.UTF-8
 
 However, if I downgrade localepurge to 0.6.3, this issue is gone.
 Did I miss something for the new version of localepurge?
 Thanks.
 
 Steven.
 
 [...]

In 0.7.3, I (mostly[1]) fixed a problem where localepurge was not
respecting the values stored in /etc/locale.nopurge.  It seems that you
are working around #691431 when you should instead just update
/etc/locale.nopurge to contain the values you want.
  Currently, localepurge will (now) read the values from
/etc/locale.nopurge when it is being (re-)configured (or upgraded) and
inject those into the database before asking questions.

~Niels

[1] Mostly because I haven't fixed #563774 yet.  But from what I can
tell, that particular bug does not apply to your case.


-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Bug#724491: localepurge: debconf-communicate -fnoninteractive localepurge does not work

2013-09-24 Thread Steven Shiau


On 09/24/2013 05:24 PM, Niels Thykier wrote:
 Control: tags -1 moreinfo
 
 On 2013-09-24 11:11, Steven Shiau wrote:
 Package: localepurge
 Version: 0.7.3
 Severity: normal

 Dear Maintainer,
 
 Hi,
 
 After upgrading to localepurge 0.7.3, the following commands do not work:
 =
 debconf-communicate -fnoninteractive localepurge EOF
 set localepurge/nopurge ca_ES.UTF-8, de_DE.UTF-8
 fset localepurge/nopurge seen true
 EOF

 [...]

 I expect it should be changed as
 Value: ca_ES.UTF-8, de_DE.UTF-8

 However, if I downgrade localepurge to 0.6.3, this issue is gone.
 Did I miss something for the new version of localepurge?
 Thanks.

 Steven.

 [...]
 
 In 0.7.3, I (mostly[1]) fixed a problem where localepurge was not
 respecting the values stored in /etc/locale.nopurge.  It seems that you
 are working around #691431 when you should instead just update
 /etc/locale.nopurge to contain the values you want.
   Currently, localepurge will (now) read the values from
 /etc/locale.nopurge when it is being (re-)configured (or upgraded) and
 inject those into the database before asking questions.
 
Hi Niels,
Thanks for the quick response. Actually I can reproduce the problem in
the bootstrap chroot environment. Here is how I reproduce the problem:
1. debootstrap --verbose --arch=i386 sid sid-chroot
http://free.nchc.org.tw/debian
2. sudo chroot sid-chroot
3. apt-get update; apt-get install localepurge
   Then (1) choose not to remove all locales, (2) not to use dpkg
--path-exclude (3) selecting locale file en_US.UTF-8
4. grep -A3 localepurge/nopurge /var/cache/debconf/config.dat
Name: localepurge/nopurge
Template: localepurge/nopurge
Value: en_US.UTF-8
Owners: localepurge
Flags: seen
5. debconf-communicate -fnoninteractive localepurge EOF
 set localepurge/nopurge ca_ES.UTF-8, de_DE.UTF-8
 fset localepurge/nopurge seen true
 EOF
6. dpkg-reconfigure --priority=low --unseen-only localepurge
   Then choose also delete localized man pages.
7. grep -A3 localepurge/nopurge /var/cache/debconf/config.dat
Name: localepurge/nopurge
Template: localepurge/nopurge
Value: en_US.UTF-8
Owners: localepurge
Flags: seen

The value is still en_US.UTF-8, which I expect it should be
ca_ES.UTF-8, de_DE.UTF-8.

I also ran steps 5-6 again, and the step 7 step still showed me Value:
en_US.UTF-8

Any suggestion or idea?
Thanks.

Steven.

 ~Niels
 
 [1] Mostly because I haven't fixed #563774 yet.  But from what I can
 tell, that particular bug does not apply to your case.
 

-- 
Steven Shiau steven _at_ nchc org tw steven _at_ stevenshiau org
National Center for High-performance Computing, Taiwan.
http://www.nchc.org.tw
Public Key Server PGP Key ID: 1024D/9762755A
Fingerprint: A2A1 08B7 C22C 3D06 34DB  F4BC 08B3 E3D7 9762 755A


-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Bug#724491: localepurge: debconf-communicate -fnoninteractive localepurge does not work

2013-09-24 Thread Niels Thykier
On 2013-09-24 14:12, Steven Shiau wrote:
 
 
 [...]

 Hi Niels,

Hi,

 Thanks for the quick response. Actually I can reproduce the problem in
 the bootstrap chroot environment. Here is how I reproduce the problem:
 [...]

Thanks for the step-by-step guide.

 
 The value is still en_US.UTF-8, which I expect it should be
 ca_ES.UTF-8, de_DE.UTF-8.
 
 I also ran steps 5-6 again, and the step 7 step still showed me Value:
 en_US.UTF-8
 
 Any suggestion or idea?
 Thanks.
 
 Steven.
 
 [...]


What happens is that the results of your debconf-communicate session is
overridden the moment you run dpkg-reconfigure localepurge or upgrade
localepurge.  I have to either treat the config file or the debconf
database as the canonical data source.  localepurge/0.7.2 used the
debconf database, but that was considered a bug.
  Jakub Wilk from #563774 (quoting the description of a Lintian tag):
 | In the Unix tradition, Debian packages should have human-readable and 
 | human-editable configuration files. […] Typically, packages should use 
 | debconf-supplied information to generate configuration files, and — to 
 | avoid losing configuration information on upgrades — should parse 
 | these configuration files in the config script if it is necessary to 
 | ask the user for changes.




So now it uses the generated config file (if available) to (re)seed the
debconf database before asking requestions so the default is to generate
the same config file you already have[1].  You may want to read the bugs
#691431 and #563774 for more information as they are the reason the
behaviour has changed (and why I believe I cannot change it back).

~Niels

[1] With the exception of the purge all-case which is still broken.


-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Bug#724491: localepurge: debconf-communicate -fnoninteractive localepurge does not work

2013-09-24 Thread Steven Shiau


On 09/25/2013 02:44 AM, Niels Thykier wrote:
 So now it uses the generated config file (if available) to (re)seed the
 debconf database before asking requestions so the default is to generate
 the same config file you already have[1].  You may want to read the bugs
 #691431 and #563774 for more information as they are the reason the
 behaviour has changed (and why I believe I cannot change it back).
Hi Niels,
Got it. So now what I have to do is to forget about using
debconf-communicate to feed the config for purge in debconf, instead I
should just edit /etc/locale.nopurge. This is actually easier. However,
I have a question about this. The reason I want to use
debconf-communicate is to avoid the interactive mode during deb package
is installed, i.e. apt-get install localepurge. This unattended mode
is used for creating Debian live CD. Now how could preseed the config
before installing localepurge so that when apt-get install localepurge
is run it won't enter interactive mode? Any hint is appreciated.
Thanks.

Steven.

-- 
Steven Shiau steven _at_ nchc org tw steven _at_ stevenshiau org
National Center for High-performance Computing, Taiwan.
http://www.nchc.org.tw
Public Key Server PGP Key ID: 4096R/47CF935C
Fingerprint: 0240 1FEB 695D 7112 62F0  8796 11C1 12DA 47CF 935C


-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Bug#724491: localepurge: debconf-communicate -fnoninteractive localepurge does not work

2013-09-24 Thread Niels Thykier
On 2013-09-25 05:45, Steven Shiau wrote:
 
 
 On 09/25/2013 02:44 AM, Niels Thykier wrote:
 So now it uses the generated config file (if available) to (re)seed the
 debconf database before asking requestions so the default is to generate
 the same config file you already have[1].  You may want to read the bugs
 #691431 and #563774 for more information as they are the reason the
 behaviour has changed (and why I believe I cannot change it back).
 Hi Niels,
 Got it. So now what I have to do is to forget about using
 debconf-communicate to feed the config for purge in debconf, instead I
 should just edit /etc/locale.nopurge. This is actually easier. However,
 I have a question about this. The reason I want to use
 debconf-communicate is to avoid the interactive mode during deb package
 is installed, i.e. apt-get install localepurge. This unattended mode
 is used for creating Debian live CD. Now how could preseed the config
 before installing localepurge so that when apt-get install localepurge
 is run it won't enter interactive mode? Any hint is appreciated.
 Thanks.
 
 Steven.
 

Ah, this should still work for preseeding localepurge.
  However, you can only do it /before/ installing localepurge (or if you
remove /etc/locale.nopurge before running dpkg-reconfigure).

~Niels


-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org