[Libreoffice-commits] core.git: setup_native/CustomTarget_scripts.mk setup_native/scripts

Michael Stahl mstahl at redhat.com
Thu Feb 15 21:32:11 UTC 2018


 setup_native/CustomTarget_scripts.mk      |   20 -
 setup_native/scripts/install_solaris.sh   |  376 ------------------------------
 setup_native/scripts/uninstall_solaris.sh |   74 -----
 3 files changed, 470 deletions(-)

New commits:
commit e1082e45361a92a31adedcc3ed0a35c704bca543
Author: Michael Stahl <mstahl at redhat.com>
Date:   Thu Feb 15 22:23:10 2018 +0100

    setup_native: remove {un,}install_solaris.sh
    
    These scripts were never shipped to end users (the corresponding
    install_linux.sh was only added to the instset in LO times,
    see 117b3242dbdcf5c9690921f2f4cf1495df10c11e) but were used
    by QA and developers to install multiple Solaris builds
    as non-root using getuid.so.
    
    But the "archive" installation set can be used for the
    same purpopse and doesn't require a custom script.
    
    Change-Id: I665277bef7c5ddd58e798f5f1b1c6a97a0f3cfc5

diff --git a/setup_native/CustomTarget_scripts.mk b/setup_native/CustomTarget_scripts.mk
index 5a50a69b4e36..c7f8c5b0aec1 100644
--- a/setup_native/CustomTarget_scripts.mk
+++ b/setup_native/CustomTarget_scripts.mk
@@ -35,24 +35,4 @@ $(scripts_WORKDIR)/uninstall: $(SRCDIR)/setup_native/scripts/uninstall_linux.sh
 endif
 endif
 
-ifeq ($(OS),SOLARIS)
-$(eval $(call gb_CustomTarget_register_targets,setup_native/scripts,\
-	install \
-	uninstall \
-	getuid.so.stripped \
-))
-
-$(scripts_WORKDIR)/getuid.so.stripped: $(call gb_Library_get_target,getuid)
-	cp $< $@
-	/usr/ccs/bin/strip $@
-
-$(scripts_WORKDIR)/install: $(SRCDIR)/setup_native/scripts/install_solaris.sh $(scripts_WORKDIR)/getuid.so.stripped
-	$(PERL) -w $(SRCDIR)/setup_native/scripts/install_create.pl $^ $@
-	chmod 775 $@
-
-$(scripts_WORKDIR)/uninstall: $(SRCDIR)/setup_native/scripts/uninstall_solaris.sh $(scripts_WORKDIR)/getuid.so.stripped
-	$(PERL) -w $(SRCDIR)/setup_native/scripts/install_create.pl $^ $@
-	chmod 775 $@
-endif
-
 # vim: set noet sw=4 ts=4:
diff --git a/setup_native/scripts/install_solaris.sh b/setup_native/scripts/install_solaris.sh
deleted file mode 100644
index de60ea92be67..000000000000
--- a/setup_native/scripts/install_solaris.sh
+++ /dev/null
@@ -1,376 +0,0 @@
-#!/usr/bin/env bash
-#
-# This file is part of the LibreOffice project.
-#
-# This Source Code Form is subject to the terms of the Mozilla Public
-# License, v. 2.0. If a copy of the MPL was not distributed with this
-# file, You can obtain one at http://mozilla.org/MPL/2.0/.
-#
-# This file incorporates work covered by the following license notice:
-#
-#   Licensed to the Apache Software Foundation (ASF) under one or more
-#   contributor license agreements. See the NOTICE file distributed
-#   with this work for additional information regarding copyright
-#   ownership. The ASF licenses this file to you under the Apache
-#   License, Version 2.0 (the "License"); you may not use this file
-#   except in compliance with the License. You may obtain a copy of
-#   the License at http://www.apache.org/licenses/LICENSE-2.0 .
-#
-
-ADD="no"
-LINK="no"
-UPDATE="no"
-USAGE="Usage: $0 [-a] [-l] [-h] <pkg-source-dir> <office-installation-dir>"
-
-help()
-{
-  echo
-  echo "User Mode Installation script for developer and knowledgeable early access tester"
-  echo
-  echo "This installation method is not intended for use in a production environment!"
-  echo "Using this script is unsupported and completely at your own risk"
-  echo
-  echo "Usage:" $0 "<pkg-source-dir> <office-installation-dir> [-l]"
-  echo "    <pkg-source-dir>:       directory *only* containing the Solaris pkg packages to be installed"
-  echo "                            or language pack shell script containing the Solaris pkg packages"
-  echo "    <office-installation-dir>: directory to where the office and the pkg database will get installed into"
-  echo
-  echo "Optional Parameter:"
-  echo "    -a :              add to an existing <office-installation-dir>"
-  echo "    -l :              create a link \"soffice\" in $HOME"
-  echo "    -h :              output this help"
-}
-
-try_to_unpack_languagepack_file()
-{
-  FILENAME=$PACKAGE_PATH
-
-  # Checking, if $FILENAME is a language pack.
-  # String "language package" has to exist in the shell script file.
-  # If this is no language pack, the installation is not supported
-
-  SEARCHSTRING=`head -n 10 $FILENAME | grep "language package"`
-
-  if [ ! -z "$SEARCHSTRING" ]
-  then
-    echo "First parameter $FILENAME is a language pack";
-  else
-    printf "\nERROR: First parameter $FILENAME is a file, but no language pack shell script.\n"
-    echo $USAGE
-    exit 2
-  fi
-
-  echo "Unpacking shell script $FILENAME"
-  # TAILLINE=`head -n 20 $FILENAME | sed --quiet 's/linenum=//p'`
-  TAILLINE=`head -n 20 $FILENAME | sed -n 's/linenum=//p'`
-
-  if [ -x "/usr/bin/mktemp" ]  # available in Solaris 10
-  then
-    UNPACKDIR=`mktemp -d`
-  else
-    UNPACKDIR=/var/tmp/install_$$
-    mkdir $UNPACKDIR
-  fi
-
-  echo $UNPACKDIR
-  tail +$TAILLINE $FILENAME | gunzip | (cd $UNPACKDIR; tar xvf -)
-
-  # Setting the new package path, in which the packages exist
-  PACKAGE_PATH=$UNPACKDIR
-
-  # Setting variable UPDATE, because an Office installation has to exist, if a language pack shall be installed
-  UPDATE="yes"
-}
-
-pkg_error()
-{
-  # pkg command failed, check for admin log and report help
-  if [ -f /tmp/.ai.pkg.zone.lock-afdb66cf-1dd1-11b2-a049-000d560ddc3e ]
-  then
-    echo "####################################################################"
-    echo "#     Installation failed due to stale administrative lock         #"
-    echo "####################################################################"
-    printf "\nERROR: please remove the following file first:\n"
-    ls -l /tmp/.ai.pkg.zone.lock-afdb66cf-1dd1-11b2-a049-000d560ddc3e
-  fi
-  rm -f $GETUID_SO
-  exit 1
-}
-
-get_pkg_list()
-{
-  cd $1; ls -1
-}
-
-#
-# this script is for userland not for root
-#
-
-if [ $UID -eq 0 ]
-then
-  printf "\nThis script is for installation without administrative rights only\nPlease use pkgadd/patchadd to install as root\n"
-  help
-  exit 2
-fi
-
-while getopts "alh" VALUE
-do
-  echo $VALUE
-  case $VALUE in
-    a)      ADD="yes"; break;;
-    h)      help; exit 0;;
-    l)      LINK="yes"; break;;
-    ?)      echo $USAGE; exit 2;;
-  esac
-done
-shift `expr $OPTIND - 1`
-
-if [ $# != 2 ]
-then
-  echo $USAGE
-  exit 2
-fi
-
-# Determine whether this is a patch or a regular install set ..
-/bin/bash -c "ls $1/*/patchinfo >/dev/null 2>&1"
-if [ "$?" = 0 ]
-then
-  UPDATE="yes"
-  PATCH_PATH="$1"
-  PATCH_INFO_LIST=`/bin/bash -c "cd $1; ls */patchinfo"`
-  PATCH_LIST=`for i in ${PATCH_INFO_LIST}; do dirname $i; done`
-elif [ -f "$1/patchinfo" ]
-then
-  UPDATE="yes"
-  PATCH_PATH=`dirname "$1"`
-  PATCH_LIST=`basename "$1"`
-else
-  if [ -d "$1/packages" ]
-  then
-    PACKAGE_PATH="$1/packages"
-  else
-    PACKAGE_PATH=$1
-  fi
-
-  #
-  # If the first parameter is a shell script (download installation set), the packages have to
-  # be unpacked into temp directory
-  #
-  if [ -f "$PACKAGE_PATH" ]
-  then
-    try_to_unpack_languagepack_file
-  fi
-
-  #
-  # Create sed filter script for unwanted packages
-  #
-
-  cat > /tmp/userinstall_filer.$$ << EOF
-/^SUNWj[0-9]/d
-/-desktop-int/d
-/-shared-mime-info/d
-/-cde/d
-EOF
-
-  # Do not install gnome-integration package on systems without GNOME
-  pkginfo -q SUNWgnome-vfs
-  if [ $? -ne 0 ]
-  then
-
-    echo '/-gnome/d' >> /tmp/userinstall_filer.$$
-  fi
-
-  # pkgdep sorts the packages based on their dependencies
-  PKGDEP="`dirname $0`/pkgdep"
-  if [ ! -x $PKGDEP ]; then
-    PKGDEP="get_pkg_list"
-  fi
-
-  #
-  # Get the list of packages to install
-  #
-
-  PKG_LIST=`$PKGDEP $PACKAGE_PATH | sed -f  /tmp/userinstall_filer.$$`
-  rm -f /tmp/userinstall_filer.$$
-
-  if [ -z "$PKG_LIST" ]
-  then
-    printf "\n$0: No packages found in $PACKAGE_PATH\n"
-    exit 2
-  fi
-
-  echo "Packages found:"
-  for i in $PKG_LIST ; do
-    echo $i
-  done
-fi
-
-INSTALL_ROOT=$2
-if [ "$UPDATE" = "yes" ]
-then
-  if [ ! -d ${INSTALL_ROOT}/var/sadm/install/admin ]
-  then
-    printf "\n$0: No package database in ${INSTALL_ROOT}.\n"
-    exit 2
-  fi
-else
-  if [ "$ADD" = "no" ]
-  then
-    rmdir ${INSTALL_ROOT} 2>/dev/null
-    if [ -d ${INSTALL_ROOT} ]
-    then
-      printf "\n$0: ${INSTALL_ROOT} exists and is not empty.\n"
-      exit 2
-    fi
-  fi
-  mkdir -p ${INSTALL_ROOT}/var/sadm/install/admin
-fi
-
-# Previous versions of this script did not write this file
-if [ ! -f ${INSTALL_ROOT}/var/sadm/install/admin/default ]
-then
-  cat > ${INSTALL_ROOT}/var/sadm/install/admin/default << EOF
-action=nocheck
-conflict=nocheck
-setuid=nocheck
-idepend=nocheck
-mail=
-EOF
-fi
-
-if [ ! "${INSTALL_ROOT:0:1}" = "/" ]; then
-  INSTALL_ROOT=`cd ${INSTALL_ROOT}; pwd`
-fi
-
-# This script must exist to make extension registration work
-# always overwrite to get the latest version.
-mkdir -p ${INSTALL_ROOT}/usr/lib
-cat > ${INSTALL_ROOT}/usr/lib/postrun << \EOF
-#!/bin/sh
-set -e
-
-if [ -x /usr/bin/mktemp ]
-then
-  CMD=`/usr/bin/mktemp /tmp/userinstall.XXXXXX`
-else
-  CMD=/tmp/userinstall.$$; echo "" > $CMD
-fi
-
-sed -e 's|/opt/|${PKG_INSTALL_ROOT}/opt/|g' > $CMD
-/bin/sh -e $CMD
-rm -f $CMD
-EOF
-chmod +x ${INSTALL_ROOT}/usr/lib/postrun 2>/dev/null
-
-# create local tmp directory to install on S10
-LOCAL_TMP=
-if [ -x /usr/bin/mktemp ]
-then
-  LOCAL_TMP=`mktemp -d`
-  rmdir ${INSTALL_ROOT}/tmp 2>/dev/null
-  ln -s ${LOCAL_TMP} ${INSTALL_ROOT}/tmp
-fi
-
-#
-# the tail of the script contains a shared object for overriding the getuid()
-# and a few other calls
-#
-
-GETUID_SO=/tmp/getuid.so.$$
-linenum=???
-tail +$linenum $0 > $GETUID_SO
-
-#
-# Perform the installation
-#
-if [ "$UPDATE" = "yes" ]
-then
-  # restore original "bootstraprc" prior to patching
-  for i in ${PKG_LIST}; do
-    my_dir=${INSTALL_ROOT}`pkgparam -d ${PACKAGE_PATH} "$i" BASEDIR`
-    find "$my_dir" -type f -name bootstraprc.orig -exec sh -ce 'mv "$0" `dirname "$0"`/bootstraprc' {} \;
-  done
-
-  # copy INST_RELEASE file
-  if [ ! -f ${INSTALL_ROOT}/var/sadm/system/admin/INST_RELEASE ]
-  then
-    mkdir -p ${INSTALL_ROOT}/var/sadm/system/admin 2>/dev/null
-    cp -f /var/sadm/system/admin/INST_RELEASE ${INSTALL_ROOT}/var/sadm/system/admin/INST_RELEASE
-  fi
-
-  # The case UPDATE="yes" is valid for patch installation and for language packs.
-  # For patches the variable PKG_LIST is empty, for language packs it is not empty.
-  # Patches have to be installed with patchadd, language packs with pkgadd
-
-  if [ -z "${PKG_LIST}" ]
-  then
-    LD_PRELOAD_32=$GETUID_SO /usr/sbin/patchadd -R ${INSTALL_ROOT} -M ${PATCH_PATH} ${PATCH_LIST} 2>&1 | grep -v '/var/sadm/patch' || pkg_error
-  else
-    LD_PRELOAD_32=$GETUID_SO /usr/sbin/pkgadd -d ${PACKAGE_PATH} -R ${INSTALL_ROOT} ${PKG_LIST} >/dev/null || pkg_error
-  fi
-
-else
-
-  # Create BASEDIR directories to avoid manual user interaction
-  for i in ${PKG_LIST}; do
-    mkdir -m 0755 -p ${INSTALL_ROOT}`pkgparam -d ${PACKAGE_PATH} $i BASEDIR` 2>/dev/null
-  done
-
-  if [ ! "${INSTALL_ROOT:0:1}" = "/" ]; then
-    INSTALL_ROOT=`cd ${INSTALL_ROOT}; pwd`
-  fi
-
-  echo "####################################################################"
-  echo "#     Installation of the found packages                           #"
-  echo "####################################################################"
-  echo
-  echo "Path to the packages       : " $PACKAGE_PATH
-  echo "Path to the installation   : " $INSTALL_ROOT
-
-  LD_PRELOAD_32=$GETUID_SO /usr/sbin/pkgadd -d ${PACKAGE_PATH} -R ${INSTALL_ROOT} ${PKG_LIST} >/dev/null || pkg_error
-fi
-
-rm -f $GETUID_SO
-rm -f /tmp/.ai.pkg.zone.lock*
-
-# remove local tmp directory
-if [ ! -z ${LOCAL_TMP} ]
-then
-  rm -f ${LOCAL_TMP}/.ai.pkg.zone.lock*
-  rmdir ${LOCAL_TMP}
-  rm -f ${INSTALL_ROOT}/tmp
-  mkdir ${INSTALL_ROOT}/tmp
-fi
-
-#
-# Create a link into the users home directory
-#
-
-if [ "$LINK" = "yes" ]
-then
-  rm -f $HOME/soffice 2>/dev/null
-  find `cd "$INSTALL_ROOT" && pwd` -name soffice -type f -perm -u+x -exec /bin/sh -ce 'ln -sf "$0" "$HOME/soffice" && echo "Creating link from $0 to $HOME/soffice"' {} \;
-fi
-
-# patch the "bootstraprc" to create a self-containing installation
-for i in ${PKG_LIST}; do
-  my_dir=${INSTALL_ROOT}`pkgparam -d ${PACKAGE_PATH} "$i" BASEDIR`
-  find "$my_dir" -type f -name bootstraprc -exec sh -ce 'test ! -f "$0".orig && mv "$0" "$0".orig && sed '\''s,^UserInstallation=$SYSUSERCONFIG.*,UserInstallation=$BRAND_BASE_DIR/../UserInstallation,'\'' "$0".orig > "$0"' {} \;
-done
-
-# if an unpack directory exists, it can be removed now
-if [ ! -z "$UNPACKDIR" ]
-then
-  # for i in ${PKG_LIST}; do
-  #   cd $UNPACKDIR; rm -rf $i
-  # done
-  # rmdir $UNPACKDIR
-
-  rm -rf $UNPACKDIR
-  echo "Removed temporary directory $UNPACKDIR"
-fi
-
-echo
-echo "Installation done ..."
-exit 0
-
diff --git a/setup_native/scripts/uninstall_solaris.sh b/setup_native/scripts/uninstall_solaris.sh
deleted file mode 100644
index 899c66559ff2..000000000000
--- a/setup_native/scripts/uninstall_solaris.sh
+++ /dev/null
@@ -1,74 +0,0 @@
-#!/bin/sh
-#
-# This file is part of the LibreOffice project.
-#
-# This Source Code Form is subject to the terms of the Mozilla Public
-# License, v. 2.0. If a copy of the MPL was not distributed with this
-# file, You can obtain one at http://mozilla.org/MPL/2.0/.
-#
-# This file incorporates work covered by the following license notice:
-#
-#   Licensed to the Apache Software Foundation (ASF) under one or more
-#   contributor license agreements. See the NOTICE file distributed
-#   with this work for additional information regarding copyright
-#   ownership. The ASF licenses this file to you under the Apache
-#   License, Version 2.0 (the "License"); you may not use this file
-#   except in compliance with the License. You may obtain a copy of
-#   the License at http://www.apache.org/licenses/LICENSE-2.0 .
-#
-
-# First parameter: Root path that will be removed
-# MY_ROOT=/export/home/is/root
-
-if [ $# -ne 1 -o -z "$1" ]
-then
-  echo "One parameter required"
-  echo "Usage:"
-  echo "1. parameter: Path to the local root directory"
-  echo "All packages in local database will be removed!"
-  exit 2
-fi
-
-MY_ROOT=$1
-
-cd `dirname $0`
-DIRECTORY=`pwd`
-
-GETUID_SO=/tmp/getuid.so.$$
-linenum=???
-tail +$linenum `basename $0` > $GETUID_SO
-
-PKGLIST=`pkginfo -R $MY_ROOT | cut -f 2 -d ' ' | grep -v core`
-COREPKG=`pkginfo -R $MY_ROOT | cut -f 2 -d ' ' | grep core`
-COREPKG01=`pkginfo -R $MY_ROOT | cut -f 2 -d ' ' | grep core01`
-
-echo "#############################################"
-echo "#     Deinstallation of Office packages     #"
-echo "#############################################"
-echo
-echo "Path to the root directory :  " $MY_ROOT
-echo
-echo "Packages to deinstall:"
-for i in $PKGLIST $COREPKG; do
-  echo $i
-done
-
-INSTALL_DIR=$MY_ROOT`pkginfo -R $MY_ROOT -r $COREPKG01`
-
-# Restore original bootstraprc
-mv -f $INSTALL_DIR/program/bootstraprc.orig $INSTALL_DIR/program/bootstraprc
-
-for i in $PKGLIST $COREPKG; do
-  LD_PRELOAD=$GETUID_SO /usr/sbin/pkgrm -n -R $MY_ROOT $i
-done
-
-# Removing old root directory, very dangerous!
-# rm -rf $MY_ROOT
-
-# removing library in temp directory
-rm -f $GETUID_SO
-
-echo
-echo "Deinstallation done..."
-
-exit 0


More information about the Libreoffice-commits mailing list