| Server IP : 94.16.115.136 / Your IP : 216.73.217.106 Web Server : Apache/2.4.52 (Ubuntu) System : Linux rogerrabbit 5.15.0-185-generic #195-Ubuntu SMP Fri Jun 19 17:11:50 UTC 2026 x86_64 User : bkillingseder ( 1001) PHP Version : 8.1.2-1ubuntu2.25 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /snap/postgresql10/47/usr/bin/ |
Upload File : |
#!/bin/sh
set -e
printusage() {
echo "\n ERROR: 1 or 3 arguments required.\n\n"
echo "Usage: $0 initdb [LANG EN]"
echo " $0 newlocale [LANG EN]"
echo ""
echo " $0 initdb en_US UTF-8"
echo " $0 newlocale en_GB UTF-8"
echo "\n"
echo " If LANG and EN are not provided en_US UTF-8 is used as defaults.\n"
}
#
# Usage checks
#
if [ "$1" = "newlocale" -a \( -z "$2" -o -z "$3" \) ]; then
printusage
exit
fi
#
# Set locale defaults
#
if [ ! -z "$2" ]; then
LOCLANG="$2"
else
LOCLANG="en_US"
fi
if [ ! -z "$3" ]; then
LOCEN="$3"
else
LOCEN="UTF-8"
fi
#
# Environment variables
# Locale
LOC="$LOCLANG.$LOCEN"
export LANG=$LOC
export I18NPATH=$SNAP/usr/share/i18n
export LOCPATH=$SNAP_USER_DATA/locales
# PostgreSQL
DATA_DIR="$SNAP_USER_COMMON/data"
LOG_DIR="$SNAP_USER_COMMON/logs"
PSQLHIST_DIR="$SNAP_USER_COMMON/history"
#
# Functions
#
localegen() {
[ -e "$LOCPATH" ] || mkdir "$LOCPATH"
if [ ! -e $LOCPATH/$LOC ]; then
echo "Generating a new locale in $LOCPATH/$LOC..."
localedef --prefix=$LOCPATH -f $LOCEN -i $LOCLANG $LOCPATH/$LOC
fi
}
pginit() {
echo "Setting up PostgreSQL environment..."
echo "Data directory: $DATA_DIR"
[ -e "$DATA_DIR" ] || mkdir "$DATA_DIR"
echo "Logs directory: $LOG_DIR"
[ -e "$LOG_DIR" ] || mkdir "$LOG_DIR"
echo "psql history directory: $PSQLHIST_DIR"
[ -e "$PSQLHIST_DIR" ] || mkdir "$PSQLHIST_DIR"
echo ".psqlrc file: $SNAP_USER_COMMON/.psqlrc"
[ -e "$SNAP_USER_COMMON/.psqlrc" ] || echo "\set HISTFILE $PSQLHIST_DIR/psql_history- :DBNAME" > $SNAP_USER_COMMON/.psqlrc
echo "Checking if initdb has already been run before. If not, a new cluster will be created."
[ -e "$DATA_DIR/base" ] || $SNAP/usr/bin/initdb -D $DATA_DIR
}
#
# Main script
#
case $1 in
initdb)
localegen
pginit
;;
newlocale)
localegen
;;
*)
printusage
esac