diff --git a/.ci/install.sh b/.ci/install.sh
index a4cb34f945b9176c86f97665d53e28d9ca095f72..89984491fe97b0d26b74fa0f0f25c41f376da210 100755
--- a/.ci/install.sh
+++ b/.ci/install.sh
@@ -6,28 +6,11 @@ CMAKE_VERSION=3.15.5
 CMAKE_SHORT_VERSION=3.15
 
 if [ $TRAVIS_OS_NAME == linux ]; then
-    sudo apt-get update -qq
-    sudo apt-get install -y --no-install-recommends apt-transport-https software-properties-common curl ninja-build
     # cmake
     curl https://cmake.org/files/v${CMAKE_SHORT_VERSION}/cmake-${CMAKE_VERSION}-Linux-x86_64.sh -o cmake-install.sh
     sudo bash cmake-install.sh --skip-license --prefix=/usr/local
     export PATH="/usr/local/bin:$PATH"
 
-    # Toolchains
-    sudo add-apt-repository -y ppa:ubuntu-toolchain-r/test && \
-    curl -L https://apt.llvm.org/llvm-snapshot.gpg.key | sudo apt-key add -
-    sudo apt-add-repository "deb https://apt.llvm.org/xenial/ llvm-toolchain-xenial-6.0 main"
-    sudo apt-get update -qq
-    sudo apt-get install -y --no-install-recommends \
-        pkg-config \
-        make \
-        clang++-6.0 \
-        clang-6.0 \
-        g++-8 \
-        unzip git \
-        libssl-dev \
-        openssl
-
     mkdir -p build-libsodium
     ( cd build-libsodium
       curl -L https://download.libsodium.org/libsodium/releases/libsodium-1.0.17.tar.gz -o libsodium-1.0.17.tar.gz
diff --git a/.travis.yml b/.travis.yml
index 93d2e13d87a4b231819d2edaa13536a345dc95e2..4a979dae9a8cd8bc3216e0021f1e576885f1ab3f 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -10,21 +10,21 @@ services:
 notifications:
   email: false
 
-addons:
-  homebrew:
-    taps: nlohmann/json
-    packages:
-      - libsodium
-      - clang-format
-      - ninja
-      - openssl
-      - boost
 
 matrix:
   include:
     - os: osx
       osx_image: xcode10.2 # for c++17
       compiler: clang
+      addons:
+        homebrew:
+          taps: nlohmann/json
+          packages:
+            - libsodium
+            - clang-format
+            - ninja
+            - openssl
+            - boost
     - os: linux
       compiler: gcc
       env:
@@ -32,12 +32,47 @@ matrix:
         - CC_VERSION=gcc-8
         - CMAKE_GENERATOR=Ninja
         - COVERAGE=ON
+      addons:
+        apt:
+          sources:
+            - ubuntu-toolchain-r-test
+          packages:
+            - software-properties-common
+            - curl
+            - ninja-build
+            - pkg-config
+            - make
+            - g++-8
+            - unzip
+            - git
+            - libssl-dev
+            - openssl
     - os: linux
       compiler: clang
       env:
         - CXX_VERSION=clang++-6.0
         - CC_VERSION=clang-6.0
         - CMAKE_GENERATOR=Ninja
+      addons:
+        apt:
+          sources:
+            - ubuntu-toolchain-r-test
+            - llvm-toolchain-xenial-6.0
+            - sourceline: 'deb http://apt.llvm.org/xenial/ llvm-toolchain-xenial-6.0 main'
+              key_url: 'https://apt.llvm.org/llvm-snapshot.gpg.key'
+          packages:
+            - clang++-6.0
+            - clang-6.0
+            - software-properties-common
+            - curl
+            - ninja-build
+            - pkg-config
+            - make
+            - g++-8
+            - unzip
+            - git
+            - libssl-dev
+            - openssl
 
 cache:
   directories: