# flip-link を Homebrew, Nix, pacman でインストール

flip-link のインストール経路、実行ファイル、メタデータ、AI エージェント向けセキュリティノートを確認します。

## インストール

```sh
sudo av install brew:flip-link
```

追加のインストールコマンド:

### macOS

- Homebrew (100%):

```sh
brew install flip-link
```

  証拠: local Homebrew formula metadata

### Linux

- Nix (92%):

```sh
nix profile install nixpkgs#flip-link
```

  証拠: nixpkgs package indexes: pkgs/by-name/fl/flip-link/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1

- pacman (92%):

```sh
sudo pacman -S flip-link
```

  証拠: Arch Linux sync databases: flip-link from https://geo.mirror.pkgbuild.com/extra/os/x86_64/extra.db.tar.gz

## パッケージ情報

- **パッケージキー:** brew:flip-link
- **パッケージマネージャ:** Homebrew
- **バージョン:** 0.1.12
- **ソース概要:** Adds zero-cost stack overflow protection to your embedded programs
- **ホームページ:** <https://github.com/knurling-rs/flip-link>
- **リポジトリ:** <https://github.com/knurling-rs/flip-link>
- **生成日時:** 2026-08-03T19:37:03+00:00

## 実行可能ファイル

- flip-link (エイリアス)

## インストール挙動

- Bottle: 利用不可

## バージョンと鮮度

- ページ生成日: 2026-08-03
- マネージャ版: 0.1.12
## プロジェクトの歴史と使われ方

flip-link is a Rust linker wrapper from the Knurling embedded tooling project. It adds zero-cost stack overflow protection to bare-metal embedded Rust programs by flipping the memory layout used for ARM Cortex-M targets.

### プロジェクトの歴史

The README explains the motivating bug class: stack overflows in bare-metal Cortex-M Rust programs can collide with .bss and .data static variables, causing undefined behavior even in code without unsafe blocks.

flip-link changes the link layout so the stack grows toward the physical RAM boundary instead of into static data. A stack overflow then becomes a hardware exception handled through the Cortex-M runtime rather than silent memory corruption.

### 採用の歴史

The README documents installation from crates.io with cargo install flip-link and configuration through .cargo/config.toml, making it a drop-in build-tool package for embedded Rust projects.

The input package metadata records packaging in Homebrew, Nix, and Arch, showing adoption outside Cargo for users who install embedded toolchain helpers through system package managers.

### 使われ方

Users set the target linker to flip-link for bare-metal ARM targets, replacing rust-lld in Cargo configuration. flip-link invokes the Rust toolchain linker after adjusting the memory layout.

The official docs note support for ARM Cortex-M programs using cortex-m-rt 0.6.x and 0.7.x with LLD, with other architectures and runtime crates outside the tested scope.

### パッケージ好きにとっての重要性

flip-link is significant because it packages a linker-level safety trick as a small CLI rather than requiring every embedded project to maintain custom linker scripts.

For Rust package maintainers, it is also a clear example of tooling that belongs in the build environment: the binary is tiny, target-specific, and wired through Cargo configuration rather than imported as a normal runtime library.

### タイムライン

- 2020: v0.1.0 was released.
- 2021: v0.1.3 improved documentation and project checks around the stack overflow problem and solution.
- 2022: v0.1.6 updated the project to Rust 2021 and improved memory.x handling.
- 2024: v0.1.9 recommended target linker configuration for recent Cargo versions.
- 2025: v0.1.10 added help behavior and a fuller parser for ORIGIN and LENGTH expressions.

### Related projects

- flip-link is part of Knurling, Ferrous Systems' embedded Rust tooling effort.
- It is closely related to cortex-m-rt, rust-lld, Cargo target configuration, and ARM Cortex-M bare-metal Rust applications.

### ソース

- <https://crates.io/crates/flip-link>
- <https://github.com/knurling-rs/flip-link>
- <https://github.com/knurling-rs/flip-link/blob/main/CHANGELOG.md>


## セキュリティノート

narrow executable package without higher-risk signals.

- **Geiger リスク:** グリーン / 低
- narrow executable package without higher-risk signals

## 他のパッケージマネージャ記録

- Nix - flip-link: normalized package name match | nixpkgs package indexes: pkgs/by-name/fl/flip-link/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1
- pacman - flip-link - 0.1.12-2: normalized package name match | Arch Linux sync databases: flip-link from https://geo.mirror.pkgbuild.com/extra/os/x86_64/extra.db.tar.gz | Flips the memory layout of embedded programs to protect against stack overflows | https://github.com/knurling-rs/flip-link


## 関連リンク

- [flip-link](https://pkg.so/ja/pkg/cargo/flip-link/) - Same normalized package name exists in another local package ecosystem.

## Combined YAML source

View the package source record on GitHub. [combined/flip-link.yml](https://github.com/mxcl/pkgdb/blob/main/combined/flip-link.yml)


## ソース

- pkg.so package database
- Geiger risk classifier
- curated package history
- pkgdb category and tag curation
- external package-manager database matches
- cross-ecosystem install command graph
