Instalando Swift 3.1 no Ubuntu

Mascote do LinuxPro tirando o pacote do Swift de uma caixa aberta, ao lado do terminal e da andorinha laranja da linguagem

Nota (2026): O howto original instalava o Swift 3.1.1 no Ubuntu 16.04 via tarball em /usr/local. Essa cadeia morreu. Abaixo: Swift 6.3 no Linux com o instalador oficial (Swiftly), sem confundir com o pacote OpenStack swift.

Swift saiu da Apple em 2015, open source (Apache 2.0). Em 2017 este post baixava o 3.1.1 para o Xenial. Em setembro de 2026 a série estável é o 6.3 (6.3.3 no tarball do swift.org); o ramo 6.4 já tem snapshot. O caminho oficial no Linux não é mais um wget na raiz: é o Swiftly.

Não instale o pacote errado

apt install swift no Ubuntu/Debian é o OpenStack Swift — armazenamento de objetos, outro software. A linguagem da Apple, no repositório, quando existe, chama-se swiftlang e costuma atrasar da upstream. Para o compilador atual: Swiftly ou o tarball do swift.org/install/linux.

Plataformas com toolchain oficial: Ubuntu 22.04 e 24.04, Debian 12, Fedora, Amazon Linux 2023, UBI. x86_64 e aarch64.

Instale com Swiftly

O instalador oficial baixa dependências, troca de versão e atualiza. Sem sudo su, sem soltar o toolchain em /usr/local como root:

curl -O https://download.swift.org/swiftly/linux/swiftly-$(uname -m).tar.gz
tar zxf swiftly-$(uname -m).tar.gz
./swiftly init --quiet-shell-followup
. "${SWIFTLY_HOME_DIR:-$HOME/.local/share/swiftly}/env.sh"
hash -r
swift --version

Assinaturas PGP: swiftly-x86_64.tar.gz.sig and swiftly-aarch64.tar.gz.sig no mesmo diretório de download. Snapshot da próxima major:

swiftly install main-snapshot
# ou o ramo 6.4:
swiftly install 6.4.x-snapshot

Hello, Linux

O jeito 2026 é o Swift Package Manager, não um .swift solto no /usr/local:

mkdir MyCLI && cd MyCLI
swift package init --name MyCLI --type executable
swift run MyCLI

Deve imprimir Hello, world!. Guia oficial: CLI + SwiftPM.

Editor: extensão Swift no VS Code (swiftlang.swift-vscode) — o post de VS Code no Ubuntu ainda serve de base. Qualquer editor com LSP usa o SourceKit-LSP que vem no toolchain.

Docker e o tarball

Imagem oficial: swift:6.3 no Docker Hub (hub.docker.com/_/swift). Tarball ainda existe para quem quer o usr/bin num prefixo, com as deps de clang/libicu/libpython3 listadas em Install via Tarball — o sucessor honesto do wget de 2017, agora com assinatura e PATH de usuário, não /etc/profile de root.

SDKs extras no mesmo site: Static Linux, WebAssembly, Android.

O que ficou

A linguagem que a Apple abriu em 2015 roda no Linux de verdade: SPM, Docker, Swiftly. O 3.1.1 do Xenial não. Para o mapa das linguagens da época, o post de 2017 continua no arquivo; o Python atualizado está em Python do Básico ao Profissional.

Fonte: swift.org.