summaryrefslogtreecommitdiff
path: root/pcr/localepurge/localepurge.patch
diff options
context:
space:
mode:
Diffstat (limited to 'pcr/localepurge/localepurge.patch')
-rw-r--r--pcr/localepurge/localepurge.patch206
1 files changed, 206 insertions, 0 deletions
diff --git a/pcr/localepurge/localepurge.patch b/pcr/localepurge/localepurge.patch
new file mode 100644
index 000000000..c0174d5bf
--- /dev/null
+++ b/pcr/localepurge/localepurge.patch
@@ -0,0 +1,206 @@
+--- ../localepurge-orig/usr/sbin/localepurge 2013-06-15 18:46:01.000000000 +0200
++++ localepurge 2013-09-21 12:04:38.155721151 +0200
+@@ -1,6 +1,6 @@
+ #! /bin/bash
+
+-# Deleting all locale files and localized man pages installed
++# Deleting all locale files and localized man pages installed
+ # on system which are *not* listed in /etc/locale.nopurge
+
+ set -e
+@@ -12,48 +12,35 @@
+ fi
+
+ if [ "$1" = "--help" ] || [ "$1" = "-h" ]; then
+- echo ""
+- echo "Verbose output is triggered with option '-v' or '-verbose'."
+- echo "Debugging output is triggered with option '-d' or '-debug'."
+- echo "To reconfigure it, run 'dpkg-reconfigure localepurge'."
+- echo "Documentation is either available via 'man localepurge'"
+- echo "or by reading the docs in /usr/share/doc/localepurge."
+- echo ""
+- if [ -f $NOPURGECONF ] && fgrep --quiet --line-regexp USE_DPKG $NOPURGECONF ; then
+- echo "NB: localepurge has been configured to use dpkg. Therefore,"
+- echo "this script will not do anything."
+- fi
+- exit 0
++ echo ""
++ echo "Verbose output is triggered with option '-v' or '-verbose'."
++ echo "Debugging output is triggered with option '-d' or '-debug'."
++ echo "To reconfigure it, edit /etc/locale.nopurge file."
++ echo "Documentation is available via 'man 8 localepurge'."
++ echo ""
++ exit 0
+ fi
+
+-
+ # Do nothing and report why if no valid configuration file exists:
+
+-if [ ! -f $NOPURGECONF ]
+- then
+- echo " No $NOPURGECONF file present, exiting ..."
++if [ ! -f $NOPURGECONF ]; then
++ echo " No $NOPURGECONF file present, exiting ..."
++ exit 0
++else
++ if fgrep --quiet --line-regexp NEEDSCONFIGFIRST $NOPURGECONF ; then
++ echo
++ echo " You have to configure \"localepurge\" by editing"
++ echo
++ echo " /etc/locale.nopurge file"
++ echo
++ echo " to make $0 actually start to function."
++ echo
++ echo " Nothing to be done, exiting ..."
++ echo
+ exit 0
+- else
+- if fgrep --quiet --line-regexp USE_DPKG $NOPURGECONF
+- then
+- # Do nothing, dpkg does all the work for us.
+- exit 0
+- elif fgrep --quiet --line-regexp NEEDSCONFIGFIRST $NOPURGECONF
+- then
+- echo
+- echo " You have to configure \"localepurge\" with the command"
+- echo
+- echo " dpkg-reconfigure localepurge"
+- echo
+- echo " to make $0 actually start to function."
+- echo
+- echo " Nothing to be done, exiting ..."
+- echo
+- exit 0
+- fi
++ fi
+ fi
+
+-
+ ################################################################
+ ## Initialise variables
+
+@@ -85,7 +72,6 @@
+ VERBOSE=1
+ fi
+
+-
+ ################################################################
+ ## Manage the list of locales
+
+@@ -97,57 +83,57 @@
+
+ ((VERBOSE)) && echo "localepurge: checking for existence of $LOCALECACHEDIR..."
+ if [ ! -d $LOCALECACHEDIR ]; then
+- mkdir -m 644 -p $LOCALECACHEDIR
++ mkdir -m 644 -p $LOCALECACHEDIR
+ fi
+
+ ((VERBOSE)) && echo "localepurge: checking for existence of $LOCALELIST..."
+ if [ ! -f $LOCALELIST ]; then
+- touch $LOCALELIST && chmod 664 $LOCALELIST
++ touch $LOCALELIST && chmod 664 $LOCALELIST
+ fi
+
+ ((VERBOSE)) && echo "localepurge: checking system for new locale ..."
+
+ for NEWLOCALE in $(cd /usr/share/locale; ls .)
+-do
+- if [ -d /usr/share/locale/$NEWLOCALE/LC_MESSAGES ]; then
+- if [ ! "$(grep -cx $NEWLOCALE $LOCALELIST)" = "1" ]; then
+- echo "$NEWLOCALE" >> "$NEWLOCALELIST"
++do
++ if [ -d /usr/share/locale/$NEWLOCALE/LC_MESSAGES ]; then
++ if [ ! "$(grep -cx $NEWLOCALE $LOCALELIST)" = "1" ]; then
++ echo "$NEWLOCALE" >> "$NEWLOCALELIST"
++ fi
+ fi
+- fi
+ done
+
+ for NEWLOCALE in $(ls --ignore="man[1-9]*" /usr/share/man)
+-do
+- if [ -d /usr/share/man/$NEWLOCALE/man1 ] || [ -d /usr/share/man/$NEWLOCALE/man8 ]; then
+- if [ ! "$(grep -cx $NEWLOCALE $LOCALELIST)" = "1" ]; then
+- echo "$NEWLOCALE" >> "$NEWLOCALELIST"
++do
++ if [ -d /usr/share/man/$NEWLOCALE/man1 ] || [ -d /usr/share/man/$NEWLOCALE/man8 ]; then
++ if [ ! "$(grep -cx $NEWLOCALE $LOCALELIST)" = "1" ]; then
++ echo "$NEWLOCALE" >> "$NEWLOCALELIST"
++ fi
+ fi
+- fi
+ done
+
+ if [ -f $NEWLOCALELIST ]; then
+- if ((DONTBOTHERNEWLOCALE)); then
+- mv "$NEWLOCALELIST" "$NEWLOCALELIST".temp
+- sort -u "$NEWLOCALELIST".temp "$LOCALELIST"> "$NEWLOCALELIST"
+- mv "$NEWLOCALELIST" "$LOCALELIST"
+- rm "$NEWLOCALELIST".temp
+- else
+- mv "$NEWLOCALELIST" "$NEWLOCALELIST".temp
+- sort -u "$NEWLOCALELIST".temp > "$NEWLOCALELIST"
+- rm "$NEWLOCALELIST".temp
+- fi
++ if ((DONTBOTHERNEWLOCALE)); then
++ mv "$NEWLOCALELIST" "$NEWLOCALELIST".temp
++ sort -u "$NEWLOCALELIST".temp "$LOCALELIST"> "$NEWLOCALELIST"
++ mv "$NEWLOCALELIST" "$LOCALELIST"
++ rm "$NEWLOCALELIST".temp
++ else
++ mv "$NEWLOCALELIST" "$NEWLOCALELIST".temp
++ sort -u "$NEWLOCALELIST".temp > "$NEWLOCALELIST"
++ rm "$NEWLOCALELIST".temp
++ fi
+ fi
+
+ if [ -f "$NEWLOCALELIST" ] && [ $DONTBOTHERNEWLOCALE != yes ]; then
+ echo "Some new locales have appeared on your system:"
+ echo
+- tr '\n' ' ' < "$NEWLOCALELIST"
++ tr '\n' ' ' < "$NEWLOCALELIST"
+ echo
+ echo
+ echo "They will not be touched until you reconfigure localepurge"
+ echo "with the following command:"
+ echo
+- echo " dpkg-reconfigure localepurge"
++ echo " /usr/bin/localepurge-config"
+ echo
+ fi
+
+@@ -157,7 +143,7 @@
+ ## all locales and create a pattern matching superfluous locales.
+ nopurge=$(
+ set -o noglob; # Disable path expansion and use 'echo'
+- # below to change newlines into spaces
++ # below to change newlines into spaces
+ echo $(grep --invert-match --extended-regexp '^[ \t]*(#|$)' $NOPURGECONF)
+ )
+ nopurgepat='@(C|'"${nopurge// /|}"')'
+@@ -172,7 +158,7 @@
+ )
+
+ ################################################################
+-## Define utility functions
++## Define utility functions
+
+ # Function for disk space calculation
+ # Usage: get_used_space <dirname>
+@@ -202,7 +188,7 @@
+ local flag
+ ((VERBOSE)) && flag=-v
+ for file; do
+- if [ -f "$file" ] || [ -h "$file" ]; then
++ if [ -f "$file" ] || [ -h "$file" ]; then
+ echo "$file"
+ fi
+ done | xargs rm $flag
+@@ -241,7 +227,6 @@
+ fi
+ }
+
+-
+ ################################################################
+ ## Now, get the job done
+