diff --git a/.gitignore b/.gitignore
index 902abd01d4d44fbb44fc0afeddb73b072f0ec1a6..ac81a4ad5da012e3b99f7b5d111f119b4faf3b2b 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,3 +1,4 @@
 .idea/
+prefix/
 sysroot/
 **/target/
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 8d204b960326a67636b045bc1f2d2d0272ae5fbc..ae9e1a561050711a06d7789cf88e7c356c6519c8 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -28,13 +28,14 @@ build:redox:
         # This can't be in before_script because that overrides
         # the global before_script.
         - apt-get update -qq
-        - apt-get install -qq apt-transport-https build-essential curl git gnupg software-properties-common
-        - apt-key adv --keyserver keyserver.ubuntu.com --recv-keys AA12E97F0881517F
-        - add-apt-repository 'deb https://static.redox-os.org/toolchain/apt /'
-        - apt-get update -qq && apt-get install -qq x86-64-unknown-redox-gcc
+        - apt-get install -qq tar
+        - rm -rf prefix
+        - mkdir prefix
+        - wget -O - https://static.redox-os.org/toolchain/x86_64-unknown-redox/gcc-install.tar.gz |
+          tar --extract --gzip --directory prefix
 
         # Main script
-        - make all
+        - env PATH="${PWD}/prefix/bin:$PATH" make all
 
 test:linux:
     stage: test
diff --git a/.travis.yml b/.travis.yml
deleted file mode 100644
index 481719f9d1791fddae7667310c44a83ed1cb08e4..0000000000000000000000000000000000000000
--- a/.travis.yml
+++ /dev/null
@@ -1,16 +0,0 @@
-language: rust
-env:
-  -
-  - TARGET=aarch64-unknown-linux-gnu
-  - TARGET=x86_64-unknown-redox
-rust:
-  - nightly
-install:
-  - if [ $TARGET == "aarch64-unknown-linux-gnu" ]; then sudo apt-get install gcc-aarch64-linux-gnu; fi
-before_script:
-  - rustup component add rustfmt-preview
-  - if [ -n "$TARGET" ]; then rustup target add $TARGET; fi
-script:
-  - ./ci.sh
-notifications:
-  email: false