weblate/ci/apt-install
Michal Čihař 688bf587be feat(vcs): enable proactive git authentication
This makes Git use provided authetication even if the server doesn't ask
for that. This fixes issues with some servers such as Azure DevOps.

Requires Git 2.46 or newer.
2025-02-27 10:39:27 +01:00

57 lines
1.7 KiB
Bash
Executable file

#!/bin/sh
# Copyright © Michal Čihař <michal@weblate.org>
#
# SPDX-License-Identifier: GPL-3.0-or-later
set -e -x
CI_DATABASE="$1"
mkdir -p /run/user/1000
chown -R 1000:1000 /run/user/1000
# Add PostgreSQL repo
install -d /usr/share/postgresql-common/pgdg
curl -o /usr/share/postgresql-common/pgdg/apt.postgresql.org.asc --fail https://www.postgresql.org/media/keys/ACCC4CF8.asc
echo "deb [signed-by=/usr/share/postgresql-common/pgdg/apt.postgresql.org.asc] https://apt.postgresql.org/pub/repos/apt $(lsb_release -cs)-pgdg main" > /etc/apt/sources.list.d/pgdg.list
curl -o /etc/apt/keyrings/git-core.launchpad.net.asc --fail 'https://keyserver.ubuntu.com/pks/lookup?op=get&search=0xe363c90f8f1b6217'
echo "deb [signed-by=/etc/apt/keyrings/git-core.launchpad.net.asc] https://ppa.launchpadcontent.net/git-core/ppa/ubuntu $(lsb_release -cs) main" > /etc/apt/sources.list.d/git.list
# Update package lists
apt-get update
# Install dependencies
apt-get install -y \
gettext \
git \
git-svn \
gnupg \
subversion \
postgresql-client-17 \
pkg-config \
libxml2-dev \
libacl1-dev \
liblz4-dev \
libzstd-dev \
libxxhash-dev \
libxmlsec1-dev \
libsasl2-dev \
libldap2-dev \
libssl-dev \
libffi-dev \
libgirepository1.0-dev \
libcairo-dev \
liblz4-dev \
gir1.2-rsvg-2.0 \
gir1.2-pango-1.0
# TODO: remove this once Python 3.13 wheels are available, see
# https://github.com/sirfz/tesserocr/pull/357
apt-get install -y libleptonica-dev libtesseract-dev
# Remove MySQL 8.x client, use older MariaDB one to ensure compatibility
if [ "$CI_DATABASE" = "mariadb" ]; then
apt-get purge 'mysql-client.*'
apt-get install -y mariadb-client
fi