macOS
brew install tuplocal Homebrew formula metadata
安装
brew install tuplocal Homebrew formula metadata
sudo apk add tupAlpine Linux edge package indexes · tup · 来源: dl-cdn.alpinelinux.org
nix profile install nixpkgs#tupnixpkgs package indexes · pkgs/by-name/tu/tup/package.nix · 来源: api.github.com
sudo pacman -S tupArch Linux sync databases · tup · 来源: geo.mirror.pkgbuild.com
sudo zypper install tupopenSUSE Tumbleweed package metadata · tup · 来源: download.opensuse.org
scoop install main/tupScoop official bucket manifest trees · bucket/tup.json · 来源: api.github.com
概览
File-based build system
历史
tup is a file-based build system that models a project as changed files plus a directed acyclic graph, then updates only the outputs affected by those changes.
tup was published as an alternative to traditional build tools whose rebuild cost depends heavily on scanning files and manually maintained dependencies. The official README and homepage describe it as a build system for Linux, macOS, and Windows that takes a list of file changes and a DAG, then executes the commands needed to update dependent files with very little overhead.
The project has been public on GitHub since 2011, but its official site keeps the older research-oriented framing alive: the navigation links to the manual, examples, Make-vs-tup comparisons, a Lua parser, and the Build System Rules and Algorithms PDF. The manual presents `tup` as the primary command, `tup init` as the creator of the `.tup` database, and Tupfiles as the place where projects describe how source files become outputs.
Unlike build front ends such as CMake, tup is itself the dependency-tracking updater. Its manual emphasizes that it has no domain-specific knowledge: C, generated files, and other build products are expressed through Tupfiles, while tup handles the graph, changed-file detection, parallel jobs, environment checking, and optional file monitoring.
tup remained a specialist build-system choice rather than a universal default, but it achieved unusually broad package-manager coverage for a niche developer tool. The supplied package metadata lists packages in apk, Homebrew, Debian, MacPorts, Nix, pacman, Scoop, Ubuntu, and zypper.
Its adoption history is tied to developers who care about exact incremental builds, generated dependency graphs, and avoiding unnecessary work. The official manual's examples and comparisons position tup in the same conversation as Make-like tools, but with a stronger focus on automatic dependency knowledge and fast no-op updates.
In day-to-day use, a developer initializes a tup hierarchy with `.tup` or a root `Tupfile.ini`, writes `Tupfile` rules, and runs `tup` to bring outputs up to date. The manual notes that `tup` can be run from anywhere in the hierarchy and will update requested outputs or the whole project.
For package-manager users, tup is a compact CLI that installs beside compilers and editors. It is often evaluated by people who are already dissatisfied with Makefile dependency drift or build-system scans, and who are comfortable adopting a declarative graph-oriented build workflow.
tup matters in the package-nerd niche because it is a long-lived, packaged build-system experiment with a clear thesis: rebuild correctness and speed should come from the updater knowing the file graph, not from every project hand-maintaining perfect dependency lists.
It is also a useful package-index signal for build-tool archaeology. Seeing tup in Homebrew, Linux distributions, Nix, Scoop, and other managers marks it as a tool that remained interesting enough for cross-platform packagers even without becoming the dominant build system.
安全态势
generalized runtime or code generation signal.
yellow 风险 · 中 置信度 · runtime
在无人值守的代理使用前,请检查该工具是否读取明文凭据、写入远程状态、发布制品或调用插件。
local files
These source-backed paths show where this package keeps local settings or durable credentials. Automic Vault can use them as review targets for secret scanning, migration, and command approval.
Config paths the tool may read or write during local use.
TupfileTupfile.ini.tup/可执行文件
| 命令 | 类型 | 暴露范围 | 备注 |
|---|---|---|---|
tup | 可执行文件 | 已索引可执行文件 | 从本地可执行文件索引发现。 |
新鲜度
这些信号区分页生成时间、软件包管理器活动和上游发布比较。只有存在证据 URL 和可比较版本时,才会提示版本落后。
安装元数据
| 软件包键 | brew:tup |
|---|---|
| 版本 | 0.8 |
| 软件包管理器 | Homebrew |
| 主页 | https://gittup.org/tup/ |
| 仓库 | https://github.com/gittup/tup |
| Bottle | 未记录 |
| 服务 | 未声明 |
源数据库匹配
匹配项来自外部软件包管理器索引,并与本地 Automic Vault 软件包链接分开显示。
tup 0.8-1+b1
fast build system
sudo apt install tuptup
nix profile install nixpkgs#tuptup 0.7.11-4
fast build system
sudo apt install tuptup 0.7.11-r1
A file-based build system
sudo apk add tuptup-doc 0.7.11-r1
A file-based build system (documentation)
sudo apk add tup-doctup-vim 0.7.11-r1
tup (vim syntax)
sudo apk add tup-vimtup 0.8-4
A fast, file-based build system
http://gittup.org/tup/index.html
sudo pacman -S tuptup 0.8-1.11
File-based build system
sudo zypper install tuptup-doc 0.8-1.11
Documentation for tup
sudo zypper install tup-doctup
sudo port install tupmain/tup
scoop install main/tup来源线索
此页面由 av-web 从 scripts/generate-pkg-sqlite.py 生成的私有软件包 SQLite 工件提供。
View the package source record on GitHub.