mirror of
				https://github.com/f-droid/fdroidserver.git
				synced 2025-11-04 14:30:30 +03:00 
			
		
		
		
	Prevents errors due to: dpkg: error: dpkg status database is locked by another process closes #437
		
			
				
	
	
		
			126 lines
		
	
	
	
		
			2.5 KiB
		
	
	
	
		
			Bash
		
	
	
	
	
	
			
		
		
	
	
			126 lines
		
	
	
	
		
			2.5 KiB
		
	
	
	
		
			Bash
		
	
	
	
	
	
#!/bin/bash
 | 
						|
 | 
						|
echo $0
 | 
						|
set -e
 | 
						|
set -x
 | 
						|
 | 
						|
debian_mirror=$1
 | 
						|
export DEBIAN_FRONTEND=noninteractive 
 | 
						|
 | 
						|
printf 'APT::Install-Recommends "0";\nAPT::Install-Suggests "0";\n' \
 | 
						|
       > /etc/apt/apt.conf.d/99no-install-recommends
 | 
						|
 | 
						|
printf 'APT::Acquire::Retries "20";\n' \
 | 
						|
       > /etc/apt/apt.conf.d/99acquire-retries
 | 
						|
 | 
						|
cat <<EOF > /etc/apt/apt.conf.d/99no-auto-updates
 | 
						|
APT::Periodic::Enable "0";
 | 
						|
APT::Periodic::Update-Package-Lists "0";
 | 
						|
APT::Periodic::Unattended-Upgrade "0";
 | 
						|
EOF
 | 
						|
 | 
						|
printf 'APT::Get::Assume-Yes "true";\n' \
 | 
						|
       > /etc/apt/apt.conf.d/99assumeyes
 | 
						|
 | 
						|
if echo $debian_mirror | grep '^https' 2>&1 > /dev/null; then
 | 
						|
    apt-get update || apt-get update
 | 
						|
    apt-get install apt-transport-https ca-certificates
 | 
						|
fi
 | 
						|
 | 
						|
cat << EOF > /etc/apt/sources.list
 | 
						|
deb ${debian_mirror} stretch main
 | 
						|
deb http://security.debian.org/debian-security stretch/updates main
 | 
						|
deb ${debian_mirror} stretch-updates main
 | 
						|
EOF
 | 
						|
echo "deb ${debian_mirror} stretch-backports main" > /etc/apt/sources.list.d/stretch-backports.list
 | 
						|
echo "deb ${debian_mirror} testing main"           > /etc/apt/sources.list.d/testing.list
 | 
						|
printf "Package: *\nPin: release o=Debian,a=testing\nPin-Priority: -300\n" > /etc/apt/preferences.d/debian-testing
 | 
						|
 | 
						|
dpkg --add-architecture i386
 | 
						|
 | 
						|
apt-get update || apt-get update
 | 
						|
apt-get upgrade --download-only
 | 
						|
apt-get upgrade
 | 
						|
 | 
						|
packages="
 | 
						|
 ant
 | 
						|
 asn1c
 | 
						|
 ant-contrib
 | 
						|
 autoconf
 | 
						|
 autoconf2.13
 | 
						|
 automake
 | 
						|
 automake1.11
 | 
						|
 autopoint
 | 
						|
 bison
 | 
						|
 bzr
 | 
						|
 ca-certificates-java
 | 
						|
 cmake
 | 
						|
 curl
 | 
						|
 disorderfs
 | 
						|
 expect
 | 
						|
 faketime
 | 
						|
 flex
 | 
						|
 gettext
 | 
						|
 gettext-base
 | 
						|
 git-core
 | 
						|
 git-svn
 | 
						|
 gperf
 | 
						|
 javacc
 | 
						|
 libarchive-zip-perl
 | 
						|
 libexpat1-dev
 | 
						|
 libgcc1:i386
 | 
						|
 libglib2.0-dev
 | 
						|
 liblzma-dev
 | 
						|
 libncurses5:i386
 | 
						|
 librsvg2-bin
 | 
						|
 libsaxonb-java
 | 
						|
 libssl-dev
 | 
						|
 libstdc++6:i386
 | 
						|
 libtool
 | 
						|
 libtool-bin
 | 
						|
 make
 | 
						|
 maven
 | 
						|
 mercurial
 | 
						|
 nasm
 | 
						|
 openjdk-8-jre-headless
 | 
						|
 openjdk-8-jdk-headless
 | 
						|
 optipng
 | 
						|
 p7zip
 | 
						|
 pkg-config
 | 
						|
 python-gnupg
 | 
						|
 python-lxml
 | 
						|
 python-magic
 | 
						|
 python-pip
 | 
						|
 python-setuptools
 | 
						|
 python3-defusedxml
 | 
						|
 python3-git
 | 
						|
 python3-gitdb
 | 
						|
 python3-gnupg
 | 
						|
 python3-pip
 | 
						|
 python3-pyasn1
 | 
						|
 python3-pyasn1-modules
 | 
						|
 python3-requests
 | 
						|
 python3-setuptools
 | 
						|
 python3-smmap
 | 
						|
 python3-yaml
 | 
						|
 python3-ruamel.yaml
 | 
						|
 quilt
 | 
						|
 rsync
 | 
						|
 scons
 | 
						|
 sqlite3
 | 
						|
 subversion
 | 
						|
 swig
 | 
						|
 unzip
 | 
						|
 xsltproc
 | 
						|
 yasm
 | 
						|
 zip
 | 
						|
 zlib1g:i386
 | 
						|
"
 | 
						|
apt-get install $packages --download-only
 | 
						|
apt-get install $packages
 | 
						|
 | 
						|
highestjava=`update-java-alternatives --list | sort -n | tail -1 | cut -d ' ' -f 1`
 | 
						|
update-java-alternatives --set $highestjava
 | 
						|
 | 
						|
# configure headless openjdk to work without gtk accessability dependencies
 | 
						|
sed -i -e 's@\(assistive_technologies=org.GNOME.Accessibility.AtkWrapper\)@#\1@' /etc/java-8-openjdk/accessibility.properties
 |