public inbox for isar-users@googlegroups.com
 help / color / mirror / Atom feed
From: claudius.heine.ext@siemens.com
To: isar-users@googlegroups.com
Cc: Claudius Heine <ch@denx.de>
Subject: [PATCH v5 2/4] meta/isar-cfg-localepurge: added locale purge recipe
Date: Tue, 29 May 2018 14:14:23 +0200	[thread overview]
Message-ID: <20180529121425.8783-3-claudius.heine.ext@siemens.com> (raw)
In-Reply-To: <20180529121425.8783-1-claudius.heine.ext@siemens.com>

From: Claudius Heine <ch@denx.de>

The package 'isar-cfg-localepurge' is used to set the locales of the
root file system and purge all not required locales.

Signed-off-by: Claudius Heine <ch@denx.de>
---
 .../isar-cfg-localepurge/files/locale.debconf | 12 ++++++++
 .../isar-cfg-localepurge/files/locale.gen     |  1 +
 .../isar-cfg-localepurge/files/postinst       | 30 +++++++++++++++++++
 .../isar-cfg-localepurge.bb                   | 19 ++++++++++++
 4 files changed, 62 insertions(+)
 create mode 100644 meta/recipes-support/isar-cfg-localepurge/files/locale.debconf
 create mode 100644 meta/recipes-support/isar-cfg-localepurge/files/locale.gen
 create mode 100644 meta/recipes-support/isar-cfg-localepurge/files/postinst
 create mode 100644 meta/recipes-support/isar-cfg-localepurge/isar-cfg-localepurge.bb

diff --git a/meta/recipes-support/isar-cfg-localepurge/files/locale.debconf b/meta/recipes-support/isar-cfg-localepurge/files/locale.debconf
new file mode 100644
index 0000000..169c071
--- /dev/null
+++ b/meta/recipes-support/isar-cfg-localepurge/files/locale.debconf
@@ -0,0 +1,12 @@
+locales	locales/locales_to_be_generated	multiselect	en_US.UTF-8 UTF-8
+locales	locales/default_environment_locale	select	en_US.UTF-8
+
+localepurge	localepurge/dontbothernew	boolean	true
+localepurge	localepurge/nopurge	multiselect	en, en_US, en_US.UTF-8
+localepurge	localepurge/use-dpkg-feature	boolean	false
+localepurge	localepurge/verbose	boolean	false
+localepurge	localepurge/showfreedspace	boolean	false
+localepurge	localepurge/none_selected	boolean	false
+localepurge	localepurge/mandelete	boolean	true
+localepurge	localepurge/quickndirtycalc	boolean	false
+localepurge	localepurge/remove_no	note
diff --git a/meta/recipes-support/isar-cfg-localepurge/files/locale.gen b/meta/recipes-support/isar-cfg-localepurge/files/locale.gen
new file mode 100644
index 0000000..a66d814
--- /dev/null
+++ b/meta/recipes-support/isar-cfg-localepurge/files/locale.gen
@@ -0,0 +1 @@
+en_US.UTF-8 UTF-8
diff --git a/meta/recipes-support/isar-cfg-localepurge/files/postinst b/meta/recipes-support/isar-cfg-localepurge/files/postinst
new file mode 100644
index 0000000..092f12e
--- /dev/null
+++ b/meta/recipes-support/isar-cfg-localepurge/files/postinst
@@ -0,0 +1,30 @@
+#!/bin/sh
+set -e
+
+cat /usr/lib/isar-cfg-localepurge/locale.gen \
+	>> /etc/locale.gen
+
+debconf-set-selections /usr/lib/isar-cfg-localepurge/locale.debconf
+
+# locale.nopurge needs to be removed before localepurge is reconfigured.
+# Otherwise it would set the debconf to the values from the locale.nopurge
+# file again.
+rm -rf /etc/locale.nopurge
+dpkg-reconfigure -f noninteractive locales localepurge
+
+# When /etc/locale.nopurge was removed before dpkg-reconfigure, it writes
+# the new configuration with the '.ucf-dist' postfix
+mv /etc/locale.nopurge.ucf-dist /etc/locale.nopurge
+
+# Now reconfigure it localpurge again, because otherwise it would complain:
+#     Some new locales have appeared on your system:
+#
+#     bal be@latin en@boldquot en@quot sr@latin
+#
+#     They will not be touched until you reconfigure localepurge
+#     with the following command:
+#
+#         dpkg-reconfigure localepurge
+dpkg-reconfigure -f noninteractive localepurge
+
+localepurge
diff --git a/meta/recipes-support/isar-cfg-localepurge/isar-cfg-localepurge.bb b/meta/recipes-support/isar-cfg-localepurge/isar-cfg-localepurge.bb
new file mode 100644
index 0000000..d2cf1f3
--- /dev/null
+++ b/meta/recipes-support/isar-cfg-localepurge/isar-cfg-localepurge.bb
@@ -0,0 +1,19 @@
+# This software is a part of ISAR.
+
+DESCRIPTION = "Isar configuration package for locale and localepurge"
+MAINTAINER = "isar-users <isar-users@googlegroups.com>"
+DEBIAN_DEPENDS = "localepurge"
+
+SRC_URI = "file://locale.debconf \
+	   file://locale.gen \
+	   file://postinst"
+
+inherit dpkg-raw
+
+do_install() {
+	install -v -d ${D}/usr/lib/${PN}
+	install -v -m 644 ${WORKDIR}/locale.debconf \
+                          ${D}/usr/lib/${PN}/locale.debconf
+	install -v -m 644 ${WORKDIR}/locale.gen \
+                          ${D}/usr/lib/${PN}/locale.gen
+}
-- 
2.17.0


  parent reply	other threads:[~2018-05-29 12:14 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-05-29 12:14 [PATCH v5 0/4] One-shot configuration packages claudius.heine.ext
2018-05-29 12:14 ` [PATCH v5 1/4] isar-bootstrap|configscript: implement one transient packages claudius.heine.ext
2018-05-29 12:14 ` claudius.heine.ext [this message]
2018-05-29 12:14 ` [PATCH v5 3/4] meta-isar/isar-image-base: switch use isar-cfg-localepurge claudius.heine.ext
2018-05-29 12:14 ` [PATCH v5 4/4] doc: added description of `IMAGE_TRANSIENT_PACKAGES` claudius.heine.ext
2018-06-01  7:44 ` [PATCH v5 0/4] One-shot configuration packages Maxim Yu. Osipov
2018-06-01  8:13   ` Claudius Heine
2018-06-01  8:43     ` Maxim Yu. Osipov

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20180529121425.8783-3-claudius.heine.ext@siemens.com \
    --to=claudius.heine.ext@siemens.com \
    --cc=ch@denx.de \
    --cc=isar-users@googlegroups.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox