295fd574bb3ae393013bbf15f1df8db79b3acb27 max Mon Jun 30 06:52:04 2025 -0700 updating mirror instructions in scripts for all linux repos to add libcurl, refs #35988 diff --git src/product/installer/browserSetup.sh src/product/installer/browserSetup.sh index faf077e0b04..3ed3c805fa5 100755 --- src/product/installer/browserSetup.sh +++ src/product/installer/browserSetup.sh @@ -1041,54 +1041,32 @@ fi } # function for Debian-specific installation of mysql and apache function installDebian () { debianInitApt echo2 Installing ghostscript and imagemagick waitKey # ghostscript for PDF export # imagemagick for the session gallery # r-base-core for the gtex tracks # python-mysqldb for hgGeneGraph + # libcurl for the new captcha apt-get $APTERR --no-install-recommends --assume-yes install ghostscript imagemagick wget rsync r-base-core curl gsfonts curl - # python-mysqldb has been removed in almost all distros as of 2021 - # There is no need to install Python2 anymore. Remove the following? - if apt-cache policy python-mysqldb | grep "Candidate: .none." > /dev/null; then - echo2 The package python-mysqldb is not available anymore. Working around it - echo2 by installing python2 and MySQL-python with pip2 - if apt-cache policy python2 | grep "Candidate: .none." > /dev/null; then - # Ubuntu >= 21 does not have python2 anymore - hgGeneGraph has been ported, so not an issue anymore - echo2 Python2 package is not available either for this distro, so not installing Python2 at all. - else - # workaround for Ubuntu 16-20 - keeping this section for a few years, just in case - apt-get install $APTERR --assume-yes python2 libmariadb-dev python2-dev wget gcc - curl https://bootstrap.pypa.io/pip/2.7/get-pip.py --output /tmp/get-pip.py - python2 /tmp/get-pip.py - if [ -f /usr/include/mysql/my_config.h ]; then - echo my_config.h found - else - wget https://raw.githubusercontent.com/paulfitz/mysql-connector-c/master/include/my_config.h -P /usr/include/mysql/ - fi - pip2 install MySQL-python - fi - else - apt-get --assume-yes install python-mysqldb - fi if [ ! -f $APACHECONF ]; then echo2 echo2 Now installing Apache2. echo2 "Apache's default config /etc/apache2/sites-enable/000-default will be" echo2 "deactivated. A new configuration $APACHECONF will be added and activated." echo2 The apache modules include, cgid and authz_core will be activated. waitKey # apache and mysql are absolutely required # ghostscript is required for PDF output apt-get $APTERR --assume-yes install apache2 ghostscript # gmt is not required. install fails if /etc/apt/sources.list does not contain # a 'universe' repository mirror. Can be safely commented out. Only used @@ -1497,33 +1475,33 @@ sudo sed -Ei '' '/Options FollowSymLinks Includes Multiviews/ a\ XBitHack on\ SSILegacyExprParser on ' /etc/apache2/httpd.conf fi sudo /usr/sbin/apachectl restart } # install gcc, make etc so we can build the tree on linux function setupBuildLinux () { echo2 Installing required linux packages from repositories: Git, GCC, G++, MariaDB-client-libs, uuid, etc waitKey if [[ "$DIST" == "debian" ]]; then debianInitApt - apt-get --assume-yes $APTERR install make git gcc g++ libpng-dev libmariadb-dev uuid-dev libfreetype-dev libbz2-dev pkg-config + apt-get --assume-yes $APTERR install make git gcc g++ libpng-dev libmariadb-dev uuid-dev libfreetype-dev libbz2-dev pkg-config libcurl4-openssl-dev elif [[ "$DIST" == "redhat" ]]; then - yum install -y git vim gcc gcc-c++ make libpng-devel libuuid-devel freetype-devel + yum install -y git vim gcc gcc-c++ make libpng-devel libuuid-devel freetype-devel libcurl-devel else echo Error: Cannot identify linux distribution exit 100 fi # the build target cgi-bin requires that these directories exist mkdir -p $HTDOCDIR $CGIBINDIR # leave a flag file so the script knows later that this directory did not exist and we made it # and it is safe to write into it touch "$APACHEDIR"/.madeByBrowserBuild } # set this machine for browser development: install required tools, clone the tree, build it function buildTree () { if [[ "$DIST" == "OSX" ]]; then