Skip to content

Commit 2d8dc9a

Browse files
committed
Tech review of Arm Linux Toolchains Repository
1 parent caeef46 commit 2d8dc9a

1 file changed

Lines changed: 36 additions & 25 deletions

File tree

content/install-guides/arm-toolchains-repository.md

Lines changed: 36 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
title: Arm Toolchains Repository
2+
title: Arm Linux Toolchains Repository
33

44
draft: true
55

@@ -17,7 +17,7 @@ test_images:
1717
- ubuntu:latest
1818

1919
official_docs: https://developer.arm.com/tools-and-software
20-
description: Configure the Arm Toolchains Repository package archive on supported Linux AArch64 distributions to enable installing Arm Toolchains products using the system package manager.
20+
description: Configure the Arm Linux Toolchains Repository package archive on supported Linux AArch64 distributions to enable installing Arm Toolchains products using the system package manager.
2121
author: Gary Carroll
2222

2323
weight: 1 # Defines page ordering. Must be 1 for first (or only) page.
@@ -27,25 +27,25 @@ multitool_install_part: false # Set to true if a sub-page of a multi-page arti
2727
layout: installtoolsall # DO NOT MODIFY. Always true for tool install articles
2828
---
2929

30-
The Arm Toolchains Linux repositories provide a native and convenient way to install selected Arm software products on supported Linux hosts using the host operating system package manager.
30+
The Arm Linux Toolchains Repository provides a native and convenient way to install selected Arm software products on supported Linux hosts using the host operating system package manager.
3131

32-
The repositories are published at [https://developer.arm.com/packages/arm-toolchains/](https://developer.arm.com/packages/arm-toolchains/).
32+
The repository files are published at [https://developer.arm.com/packages/arm-toolchains/](https://developer.arm.com/packages/arm-toolchains/).
3333

34-
They are used to distribute Linux packages for Arm Toolchains products, including:
34+
They are used to distribute Linux packages for Arm Toolchains, including:
3535

3636
- Arm Toolchain for Linux
3737
- Arm Performance Libraries for supported compilers on Linux
3838

39-
Using the Arm Toolchains Linux repositories allows you to install, upgrade, and manage these products using standard Linux package-management tools such as `apt`, `dnf`, `yum`, and `zypper`.
39+
Using the Arm Toolchains Linux Repository allows you to install, upgrade, and manage these products using standard Linux package-management tools such as `apt`, `dnf`, `yum`, and `zypper`.
4040

4141
Root or `sudo` permissions are required to install system packages.
4242

4343
{{% notice Repository signing key update July 2026 %}}
44-
Arm has recently reviewed and strengthened the repository management and publication processes used for the Arm Toolchains Linux repositories.
44+
Arm has recently reviewed and strengthened the repository management and publication processes used for the Arm Linux Toolchains Repository.
4545

46-
As part of the continuing evolution of this release channel, Arm has revoked and replaced the signing key used for the Arm Toolchains Linux repositories.
46+
As part of the continuing evolution of this release channel, Arm has revoked and replaced the signing key.
4747

48-
If you previously configured the Arm Toolchains Linux repositories, install the `arm-toolchains-repository` package version `2-2` or later before installing or upgrading Arm Toolchain for Linux or Arm Performance Libraries.
48+
If you previously configured the Arm Linux Toolchains Repository, install the `arm-toolchains-repository` package version `2-2` or later before installing or upgrading Arm Toolchain for Linux or Arm Performance Libraries.
4949

5050
Existing installed copies of Arm Toolchain for Linux and Arm Performance Libraries continue to work.
5151
{{% /notice %}}
@@ -70,11 +70,11 @@ The commands in this guide use the native package manager for your distribution:
7070
- `dnf` or `yum` for RHEL 8 or later and Amazon Linux 2023
7171
- `zypper` for SLES 15 or 16
7272

73-
## What is the Arm Toolchains repository package?
73+
## What is the Arm Linux Toolchains Repository?
7474

7575
Arm provides an `arm-toolchains-repository` for each supported Linux distribution.
7676

77-
This package configures the Arm Toolchains Linux package repository on your host system.
77+
This package configures the Arm Linux Toolchains Repository on your host system.
7878

7979
The package installs:
8080

@@ -84,7 +84,7 @@ The package installs:
8484

8585
Install this repository package before you install Arm Toolchain for Linux or Arm Performance Libraries.
8686

87-
## Why the signing key matters
87+
## About the signing key
8888

8989
Linux package managers use cryptographic signing keys to verify that repository metadata and packages are authentic and come directly from Arm.
9090

@@ -125,7 +125,7 @@ A406 5BCE 9386 DD1E 62FD E03B 8144 CA16 11A0 BD71
125125

126126
## Expected package manager errors
127127

128-
If your system still trusts only the previous Arm Toolchains repository signing key, package manager operations might fail when you refresh metadata, install packages, or upgrade packages.
128+
If your system still trusts only the previous Arm Linux Toolchains Repository signing key, package manager operations might fail when you refresh metadata, install packages, or upgrade packages.
129129

130130
Ubuntu hosts may experience errors running the `apt update` command, for example:
131131

@@ -233,7 +233,7 @@ Use manual recovery only if you cannot install the repository package directly.
233233

234234
### Ubuntu manual recovery
235235

236-
Remove previous Arm Toolchains repository key material if present:
236+
Remove previous Arm Linux Toolchains Repository key material if present:
237237

238238
```bash
239239
sudo rm -f /usr/share/keyrings/arm-toolchains-archive-keyring.gpg
@@ -262,18 +262,29 @@ The output should include:
262262
A406 5BCE 9386 DD1E 62FD E03B 8144 CA16 11A0 BD71
263263
```
264264

265-
Ensure the Arm Toolchains repository entry references the installed keyring using `signed-by`.
265+
Find any existing Arm Toolchains repository entries:
266266

267-
Example for Ubuntu 24.04:
267+
```bash
268+
grep -Rns "developer.arm.com/packages/arm-toolchains/ubuntu" \
269+
/etc/apt/sources.list /etc/apt/sources.list.d
270+
```
268271

269-
```output
270-
deb [signed-by=/usr/share/keyrings/arm-toolchains-archive-keyring.gpg] https://developer.arm.com/packages/arm-toolchains/ubuntu noble main
272+
If the command finds an existing entry, edit that entry so it references `/usr/share/keyrings/arm-toolchains-archive-keyring.gpg` using `signed-by`. Do not create a second entry for the same repository because `apt` may report conflicting `Signed-By` values.
273+
274+
If the command does not find an entry, create `/etc/apt/sources.list.d/arm-toolchains.list` using the appropriate command below.
275+
276+
For Ubuntu 24.04, run:
277+
278+
```bash
279+
echo "deb [signed-by=/usr/share/keyrings/arm-toolchains-archive-keyring.gpg] https://developer.arm.com/packages/arm-toolchains/ubuntu noble main" | \
280+
sudo tee /etc/apt/sources.list.d/arm-toolchains.list
271281
```
272282

273-
Example for Ubuntu 22.04:
283+
For Ubuntu 22.04, run:
274284

275-
```output
276-
deb [signed-by=/usr/share/keyrings/arm-toolchains-archive-keyring.gpg] https://developer.arm.com/packages/arm-toolchains/ubuntu jammy main
285+
```bash
286+
echo "deb [signed-by=/usr/share/keyrings/arm-toolchains-archive-keyring.gpg] https://developer.arm.com/packages/arm-toolchains/ubuntu jammy main" | \
287+
sudo tee /etc/apt/sources.list.d/arm-toolchains.list
277288
```
278289

279290
Refresh package metadata:
@@ -287,7 +298,7 @@ sudo apt update
287298
Remove the previous Arm Toolchains public key if present:
288299

289300
```bash
290-
sudo rpm -e gpg-pubkey-7a05af82* 2>/dev/null || true
301+
sudo rpm -e gpg-pubkey-7a05af82* || true
291302
```
292303

293304
Install the current Arm Toolchains repository signing key:
@@ -321,7 +332,7 @@ sudo zypper refresh
321332

322333
## Previous repository locations
323334

324-
The current Arm Toolchains Linux repositories at [https://developer.arm.com/packages/arm-toolchains/](https://developer.arm.com/packages/arm-toolchains/) replace the earlier repository structure that was based on repositories built using the SUSE Open Build Service.
335+
The current Arm Toolchains Linux Repository at [https://developer.arm.com/packages/arm-toolchains/](https://developer.arm.com/packages/arm-toolchains/) replaces the earlier repository structure that was based on repositories built using the SUSE Open Build Service.
325336

326337
Earlier repositories were published under the top-level package URL [https://developer.arm.com/packages/](https://developer.arm.com/packages/) and used repository prefixes such as:
327338

@@ -338,10 +349,10 @@ The deprecated repositories will be removed in a future update.
338349

339350
## Summary
340351

341-
The Arm Toolchains Linux repositories provide a native package manager based installation channel for Arm Toolchain for Linux and Arm Performance Libraries on supported Linux hosts.
352+
The Arm Linux Toolchains Repository provide a native package manager based installation channel for Arm Toolchain for Linux and Arm Performance Libraries on supported Linux hosts.
342353

343354
To use the repositories, install `arm-toolchains-repository` version `2-2` or later for your Linux distribution. This package configures the repository and installs the current repository signing key.
344355

345-
Use only the current Arm Toolchains Linux repositories at [https://developer.arm.com/packages/arm-toolchains/](https://developer.arm.com/packages/arm-toolchains/).
356+
Use only the current Arm Linux Toolchains Repository at [https://developer.arm.com/packages/arm-toolchains/](https://developer.arm.com/packages/arm-toolchains/).
346357

347358
Do not use the deprecated top-level `ACfL:` or `arm-toolchains:` repository paths for new installations.

0 commit comments

Comments
 (0)