mirror of
https://github.com/archlinuxarm/PKGBUILDs.git
synced 2024-11-08 22:45:43 +00:00
aur/localepurge to 0.7.3.1-1
This commit is contained in:
parent
34abc83a88
commit
2fde2df85f
5 changed files with 583 additions and 13 deletions
|
@ -1,8 +1,9 @@
|
|||
# Maintainer: Francesco Groccia <frgroccia gmail.com>
|
||||
# Maintainer: Hyacinthe Cartiaux <hyacinthe.cartiaux @ free.fr>
|
||||
# Contributor: Francesco Groccia <frgroccia gmail.com>
|
||||
# Contributor: Dincer Celik <dincer@bornovali.com>
|
||||
|
||||
pkgname=localepurge
|
||||
pkgver=0.7.3
|
||||
pkgver=0.7.3.1
|
||||
pkgrel=1
|
||||
pkgdesc="Script to remove disk space wasted for unneeded localizations."
|
||||
arch=('any')
|
||||
|
@ -10,10 +11,10 @@ url="http://packages.debian.org/source/sid/localepurge"
|
|||
license=('GPL')
|
||||
backup=('etc/locale.nopurge')
|
||||
source=("http://ftp.de.debian.org/debian/pool/main/l/localepurge/${pkgname}_${pkgver}.tar.gz"
|
||||
"http://fgr.bitbucket.org/im/localepurge-arch/${pkgname}.diff"
|
||||
"http://fgr.bitbucket.org/im/localepurge-arch/${pkgname}.8.diff"
|
||||
"http://fgr.bitbucket.org/im/localepurge-arch/${pkgname}.config.diff"
|
||||
"http://fgr.bitbucket.org/im/localepurge-arch/locale.nopurge")
|
||||
"${pkgname}.diff"
|
||||
"${pkgname}.8.diff"
|
||||
"${pkgname}.config.diff"
|
||||
"locale.nopurge")
|
||||
|
||||
prepare()
|
||||
{
|
||||
|
@ -35,12 +36,7 @@ package()
|
|||
fi
|
||||
install -D -m644 ${srcdir}/localelist ${pkgdir}/var/cache/localepurge/localelist
|
||||
}
|
||||
sha256sums=('1e5f569c8d5e3d09bf51128f11ebe7c80bccd785b0c028e949df21347ed135f7'
|
||||
'84b8abf57a1af27e5b50fcd5a12701a5980d85a187c5a3b3e3c3e5a79e28886d'
|
||||
'82bd40594ef0646465eed6e525368e87694322513c0d3280879fcfc5c40cb6a7'
|
||||
'dbed1ae1f1514f14c00fdb48d09ac8cd3407dbc3f1a1fed84f1e8735da1f9678'
|
||||
'b9c28be93fa47d4f0315972159e501d9eef28bbab7ffe6e8e7c4a13c359f35e8')
|
||||
sha256sums=('1e5f569c8d5e3d09bf51128f11ebe7c80bccd785b0c028e949df21347ed135f7'
|
||||
sha256sums=('d3b9f7a280211b049647b0c873be10830bb1e035adb9646a7211fae0809e87d0'
|
||||
'b8704eec22d0e84ada9a524277322f9892c11f3f4b84ec0dd4f50f0ca2dc7474'
|
||||
'82bd40594ef0646465eed6e525368e87694322513c0d3280879fcfc5c40cb6a7'
|
||||
'dbed1ae1f1514f14c00fdb48d09ac8cd3407dbc3f1a1fed84f1e8735da1f9678'
|
||||
|
|
56
aur/localepurge/locale.nopurge
Normal file
56
aur/localepurge/locale.nopurge
Normal file
|
@ -0,0 +1,56 @@
|
|||
####################################################
|
||||
# This is the configuration file for localepurge(8).
|
||||
####################################################
|
||||
# Comment this to enable localepurge.
|
||||
# NO COMMENT IT IF YOU ARE NOT SURE WHAT ARE YOU DOING
|
||||
# THIS APP DO NOT ASK FOR CONFIRMATION
|
||||
|
||||
NEEDSCONFIGFIRST
|
||||
|
||||
####################################################
|
||||
# Uncommenting this string enables removal of localized
|
||||
# man pages based on the configuration information for
|
||||
# locale files defined below:
|
||||
|
||||
MANDELETE
|
||||
|
||||
####################################################
|
||||
# Uncommenting this string causes localepurge to simply delete
|
||||
# locales which have newly appeared on the system without
|
||||
# bothering you about it:
|
||||
|
||||
#DONTBOTHERNEWLOCALE
|
||||
|
||||
#####################################################
|
||||
# Commenting out this string enables faster but less
|
||||
# accurate calculation of freed disk space:
|
||||
|
||||
#QUICKNDIRTYCALC
|
||||
|
||||
####################################################
|
||||
# Uncommenting this string enables display of freed disk
|
||||
# space if localepurge has purged any superfluous data:
|
||||
|
||||
SHOWFREEDSPACE
|
||||
|
||||
#####################################################
|
||||
# Commenting out this string disables verbose output:
|
||||
|
||||
#VERBOSE
|
||||
|
||||
#####################################################
|
||||
# You like Colors?
|
||||
|
||||
#NOCOLOR
|
||||
|
||||
#####################################################
|
||||
# You can use the -v -d -nc options in command line.
|
||||
|
||||
#####################################################
|
||||
# Following locales won't be deleted from this system
|
||||
# for example:
|
||||
en
|
||||
en_GB
|
||||
en_GB.UTF-8
|
||||
en_US
|
||||
en_US.UTF-8
|
142
aur/localepurge/localepurge.8.diff
Normal file
142
aur/localepurge/localepurge.8.diff
Normal file
|
@ -0,0 +1,142 @@
|
|||
--- ../localepurge-orig/debian/localepurge.8 2013-09-20 12:52:48.000000000 +0200
|
||||
+++ localepurge.8 2013-09-21 12:48:33.864666265 +0200
|
||||
@@ -1,4 +1,4 @@
|
||||
-.TH LOCALEPURGE 8
|
||||
+.TH LOCALEPURGE 8 "2013-09-21" "GNU/Linux" ""
|
||||
.SH NAME
|
||||
localepurge \- reclaim disk space removing unneeded localizations
|
||||
.SH SYNOPSIS
|
||||
@@ -7,15 +7,8 @@
|
||||
.SH "DESCRIPTION"
|
||||
.BR localepurge
|
||||
is a small script to recover disk space wasted for unneeded locale
|
||||
-files and localized man pages. It will be automagically invoked by
|
||||
-.BR dpkg
|
||||
-upon completion of any
|
||||
-.BR apt
|
||||
-installation run. You have to define the locale
|
||||
-directory names you want to keep from removal after each
|
||||
-.BR apt
|
||||
-installation run
|
||||
-in the
|
||||
+files and localized man pages. You have to define the locale
|
||||
+directory names you want to keep from removal in the
|
||||
.BR /etc/locale.nopurge
|
||||
configuration file. Unless
|
||||
.BR localepurge
|
||||
@@ -35,10 +28,17 @@
|
||||
.BR \-\ /usr/share/omf
|
||||
.br
|
||||
The localization files you actually need and which you want to be preserved on your system can be
|
||||
-easily configured by running the following command:
|
||||
+easily configured by editing the following file:
|
||||
.br
|
||||
-.BR dpkg-reconfigure\ localepurge
|
||||
+.BR /etc/locale.nopurge
|
||||
.br
|
||||
+New locales discovered on your system will be listed in
|
||||
+.I /var/cache/localepurge/localelist\-new
|
||||
+and should be added to
|
||||
+.I /var/cache/localepurge/localelist
|
||||
+by the
|
||||
+.BR /usr/bin/localepurge-config
|
||||
+script.
|
||||
.SH OPTIONS
|
||||
The configurable options consist of toggling verbose output, reporting a
|
||||
summary of freed space, and deletion of localized manual pages in
|
||||
@@ -68,10 +68,10 @@
|
||||
.BR not
|
||||
.BR integrated
|
||||
.BR with
|
||||
-.BR Debian's
|
||||
+.BR "Arch Linux's"
|
||||
.BR package
|
||||
.BR management
|
||||
-.BR system
|
||||
+.BR system
|
||||
and therefore is not meant for the faint of heart. Responsibility for its
|
||||
usage and possible breakage of your system therefore lies in the sysadmin's
|
||||
(your) hands.
|
||||
@@ -85,60 +85,12 @@
|
||||
All locale directories containing a subdirectory named LC_MESSAGES
|
||||
which are either commented out or not even listed at all in
|
||||
.BR /etc/locale.nopurge
|
||||
-will be irreversibly deleted. The only way to
|
||||
-reinstall any lost locales is a complete reinstallation of all the
|
||||
-Debian packages containing them. See
|
||||
-.BR /usr/share/doc/localepurge/reinstall_debs.sh
|
||||
-for a recipe.
|
||||
-Alternatively you can reconfigure
|
||||
-it with
|
||||
-.BR dpkg-reconfigure(8)
|
||||
-to prevent locale files from being purged during subsequent runs of apt.
|
||||
-.br
|
||||
-.SH SOLVING PROBLEMS caused by localepurge
|
||||
-This program does interfere with the Debian package management and does
|
||||
-provoke strange, but usually harmless, behaviour of programs related
|
||||
-with
|
||||
-.BR apt/dpkg
|
||||
-like
|
||||
-.BR dpkg-repack(1),
|
||||
-.BR debsums(1),
|
||||
-.BR reportbug(1),
|
||||
-etc.
|
||||
-If you need to have any package in its full integrity so that e.g. the
|
||||
-formerly mentioned programs work as designed by its author and as
|
||||
-expected by you, simply deinstall
|
||||
-.BR localepurge
|
||||
-temporarily without purging its configuration and reinstall the packages
|
||||
-you need in their fully integral state. When you are done with what you
|
||||
-needed the integral packages for simply reinstall
|
||||
-.BR localepurge
|
||||
-again.
|
||||
-
|
||||
+will be irreversibly deleted. The only way to reinstall any lost
|
||||
+locales is a complete reinstallation of all the Arch Linux packages
|
||||
+containing them. For more information, see "Reinstalling all installed packages"
|
||||
+at http://wiki.archlinux.org/index.php/Pacman_Tips.
|
||||
.SH FILES
|
||||
.BR /etc/locale.nopurge
|
||||
-.SH SEE ALSO
|
||||
-Administrators of systems with short disk space should have a look
|
||||
-at both the
|
||||
-.BR deborphan
|
||||
-and
|
||||
-.BR debfoster
|
||||
-packages. Especially
|
||||
-.BR debfoster
|
||||
-can work wonders for your scarce disk space!
|
||||
-
|
||||
-.br
|
||||
-.BR deborphan(1)
|
||||
-.br
|
||||
-.BR debfoster(8)
|
||||
-.br
|
||||
-.BR dpkg-reconfigure(8)
|
||||
-.br
|
||||
-.BR debconf(8)
|
||||
-.br
|
||||
-.BR /usr/share/doc/localepurge/README.debian
|
||||
-.br
|
||||
-.BR /usr/share/doc/localepurge/reinstall_debs.sh
|
||||
.SH AUTHOR
|
||||
.BR localepurge
|
||||
and its accompanying manual page was written for the
|
||||
@@ -150,3 +102,17 @@
|
||||
Debian's great package management system will make
|
||||
.BR localepurge
|
||||
fully obsolete.
|
||||
+.SH NOTE
|
||||
+This manual page and the Debian localepurge script have been modified
|
||||
+for Arch Linux system by Francesco Groccia <frgroccia gmail.com>.
|
||||
+Some Debian\-specific information has been removed.
|
||||
+.br
|
||||
+In particular, the following files have been revised from the
|
||||
+localepurge source code (Debian "sid" distribution):
|
||||
+.HP
|
||||
+
|
||||
+.I ../debian/localepurge.8
|
||||
+
|
||||
+.I ../debian/localepurge.config
|
||||
+
|
||||
+.I ../usr/sbin/localepurge
|
170
aur/localepurge/localepurge.config.diff
Normal file
170
aur/localepurge/localepurge.config.diff
Normal file
|
@ -0,0 +1,170 @@
|
|||
--- ../localepurge-orig/debian/localepurge.config 2013-09-20 14:01:46.000000000 +0200
|
||||
+++ localepurge.config 2013-09-21 15:31:10.574338160 +0200
|
||||
@@ -2,36 +2,22 @@
|
||||
|
||||
set -e
|
||||
|
||||
-. /usr/share/debconf/confmodule
|
||||
-
|
||||
# first get all possible locales and create a full list of locale values:
|
||||
|
||||
-CONFIG_FILE="/etc/locale.nopurge"
|
||||
-TEMPFILE=$(tempfile).$$
|
||||
+#TEMPFILE=$(tempfile).$$ ## tempfile command is part of debianutils package
|
||||
+TEMPFILE=$(mktemp).$$
|
||||
LOCALELIST=/var/cache/localepurge/localelist
|
||||
|
||||
-conf_has_key() {
|
||||
- local key="$1"
|
||||
-
|
||||
- if [ -f "$CONFIG_FILE" ] && fgrep --quiet --line-regexp \
|
||||
- "$key" "$CONFIG_FILE"; then
|
||||
- echo "true"
|
||||
- else
|
||||
- echo "false"
|
||||
- fi
|
||||
-}
|
||||
-
|
||||
-
|
||||
# for the purpose of presenting a ready made preselection at the very first
|
||||
# configuration, include already configured locales from locales package:
|
||||
|
||||
-LOCALEGEN=$(tempfile).locale.gen
|
||||
+LOCALEGEN=$(mktemp).locale.gen
|
||||
touch "$LOCALEGEN"
|
||||
|
||||
if [ -f /etc/locale.gen ]; then
|
||||
grep ^[a-z] /etc/locale.gen | cut -d" " -f1 > "$LOCALEGEN"
|
||||
# add double character locale names from underscore variations
|
||||
- # for later preselection:
|
||||
+ # for later preselection:
|
||||
cut -d"_" -f1 "$LOCALEGEN" | sort -u >> "$LOCALEGEN"
|
||||
fi
|
||||
|
||||
@@ -47,9 +33,8 @@
|
||||
|
||||
# include locales supported by the locales package:
|
||||
|
||||
-if [ -f /usr/share/i18n/SUPPORTED ]; then
|
||||
- grep ^[a-z] /usr/share/i18n/SUPPORTED | cut -d' ' -f1 | sort -u >> "$TEMPFILE"
|
||||
-fi
|
||||
+find /usr/share/locale -maxdepth 1 -type d -name "*" -printf "%f\n" | grep "^[a-z]" | cut -d" " -f1 | sort -u >> "$TEMPFILE"
|
||||
+#find /usr/share/i18n/locales -maxdepth 1 -type f -name "*" -printf "%f\n" | grep "^[a-z]" | cut -d" " -f1 | sort -u >> "$TEMPFILE"
|
||||
|
||||
# include locales from our previous localelist if it already exists:
|
||||
|
||||
@@ -60,8 +45,7 @@
|
||||
# include locales from newly added locales:
|
||||
NEWLOCALELIST="$LOCALELIST"-new
|
||||
|
||||
-if [ -f "$NEWLOCALELIST" ] && \
|
||||
- [ $(ps w -p "$PPID" | grep -c dpkg-reconfigure) = "1" ]; then
|
||||
+if [ -f "$NEWLOCALELIST" ]; then
|
||||
cat "$NEWLOCALELIST" >> "$TEMPFILE"
|
||||
rm -f "$NEWLOCALELIST"
|
||||
fi
|
||||
@@ -74,102 +58,14 @@
|
||||
|
||||
if [ ! -f "$LOCALELIST" ]; then
|
||||
if [ ! -d /var/cache/localepurge ]; then
|
||||
- mkdir -m 755 /var/cache/localepurge
|
||||
+ mkdir -m 755 /var/cache/localepurge
|
||||
fi
|
||||
sort -u "$TEMPFILE" > "$LOCALELIST"
|
||||
- else
|
||||
+else
|
||||
mv "$LOCALELIST" "$LOCALELIST"-old
|
||||
sort -u "$TEMPFILE" > "$LOCALELIST"
|
||||
fi
|
||||
|
||||
-# finally sort and create full list of all collected locale names
|
||||
-
|
||||
-LOCALES=$(sort -u "$TEMPFILE" | tr '\n' ' ' \
|
||||
- | sed 's/\ /,\ /g' | sed 's/,\ $//g')
|
||||
-
|
||||
-if [ -f "$CONFIG_FILE" ] ; then
|
||||
- # Update the debconf database
|
||||
- PRESELECT="$(grep --extended-regexp '^[[:lower:]][[:lower:]]' \
|
||||
- "$CONFIG_FILE" | tr '\n' ' ' | sed 's/\ /,\ /g' | \
|
||||
- sed 's/,\ $//g')"
|
||||
- db_set localepurge/nopurge "$PRESELECT"
|
||||
-
|
||||
- db_set localepurge/use-dpkg-feature "$(conf_has_key USE_DPKG)"
|
||||
- db_set localepurge/mandelete "$(conf_has_key MANDELETE)"
|
||||
- db_set localepurge/dontbothernew "$(conf_has_key DONTBOTHERNEWLOCALE)"
|
||||
- db_set localepurge/showfreedspace "$(conf_has_key SHOWFREEDSPACE)"
|
||||
- db_set localepurge/quickndirtycalc "$(conf_has_key QUICKNDIRTYCALC)"
|
||||
- db_set localepurge/verbose "$(conf_has_key VERBOSE)"
|
||||
-
|
||||
-else
|
||||
-
|
||||
- # sort and create preselection values from "$LOCALEGEN"
|
||||
-
|
||||
- PRESELECT=$(sort -u "$LOCALEGEN" | tr '\n' ' ' \
|
||||
- | sed 's/\ /,\ /g' | sed 's/,\ $//g')
|
||||
-fi
|
||||
-
|
||||
# deleting temporary files not needed anymore:
|
||||
|
||||
rm -f "$TEMPFILE" "$LOCALEGEN"
|
||||
-
|
||||
-#############################################################
|
||||
-# now that all locale data is in place let debconf take over:
|
||||
-
|
||||
-db_subst localepurge/nopurge locales "$LOCALES"
|
||||
-
|
||||
-# uncomment for debugging:
|
||||
-#echo "$LOCALES" > /tmp/locales.list
|
||||
-
|
||||
-db_get localepurge/nopurge
|
||||
-if [ "$RET" = "" ] && [ "$RET" != "PURGE_ALL" ] \
|
||||
- || [ "$RET" = "NEEDSCONFIGFIRST" ]; then
|
||||
- db_set localepurge/nopurge "$PRESELECT"
|
||||
- db_fset localepurge/nopurge seen false
|
||||
- # uncomment for debugging:
|
||||
- #echo "$PRESELECT" > /tmp/preselect.list
|
||||
-fi
|
||||
-
|
||||
-db_input high localepurge/nopurge || true
|
||||
-db_go
|
||||
-
|
||||
-db_get localepurge/nopurge
|
||||
-if [ "$RET" = "" ] || [ "$RET" = "PURGE_ALL" ]; then
|
||||
- db_input high localepurge/none_selected || true
|
||||
- db_go
|
||||
-
|
||||
- db_get localepurge/none_selected
|
||||
- if [ "$RET" = "false" ]; then
|
||||
- db_input high localepurge/remove_no || true
|
||||
- db_go
|
||||
- fi
|
||||
-fi
|
||||
-
|
||||
-db_input high localepurge/use-dpkg-feature || true
|
||||
-db_go
|
||||
-if [ "$RET" = "" -o "$RET" = "true" ] ; then
|
||||
- USE_DPKG=yes
|
||||
-else
|
||||
- USE_DPKG=no
|
||||
-fi
|
||||
-
|
||||
-db_input medium localepurge/mandelete || true
|
||||
-db_go
|
||||
-
|
||||
-if [ "$USE_DPKG" = "xno" ] ; then
|
||||
- # Features incompatible with the dpkg approach.
|
||||
- db_input medium localepurge/dontbothernew || true
|
||||
- db_go
|
||||
-
|
||||
- db_input low localepurge/showfreedspace || true
|
||||
- db_go
|
||||
-
|
||||
- db_get localepurge/showfreedspace
|
||||
- if [ "$RET" = "true" ]; then
|
||||
- db_input low localepurge/quickndirtycalc || true
|
||||
- db_go
|
||||
- fi
|
||||
-
|
||||
- db_input low localepurge/verbose || true
|
||||
- db_go
|
||||
-fi
|
206
aur/localepurge/localepurge.diff
Normal file
206
aur/localepurge/localepurge.diff
Normal file
|
@ -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
|
||||
|
Loading…
Reference in a new issue