Automic VaultAutomic Vault

brew

使用 Homebrew, apk, Nix, pacman, zypper, dnf 安装 oils-for-unix

查看 oils-for-unix 的安装路径、可执行文件、元数据以及面向 AI 代理工作流的安全说明。

安装

其他安装命令

macOS

Homebrew已验证 · 100%
brew install oils-for-unix

local Homebrew formula metadata

Linux

Alpine Linux apk已验证 · 92%
sudo apk add oils-for-unix

Alpine Linux edge package indexes · oils-for-unix · 来源: dl-cdn.alpinelinux.org

Nix已验证 · 92%
nix profile install nixpkgs#oils-for-unix

nixpkgs package indexes · pkgs/by-name/oi/oils-for-unix/package.nix · 来源: api.github.com

Arch Linux pacman已验证 · 92%
sudo pacman -S oils-for-unix

Arch Linux sync databases · oils-for-unix · 来源: geo.mirror.pkgbuild.com

openSUSE zypper已验证 · 92%
sudo zypper install oils-for-unix

openSUSE Tumbleweed package metadata · oils-for-unix · 来源: download.opensuse.org

Fedora dnf已验证 · 92%
sudo dnf install osh-client

Fedora Rawhide package metadata · osh-client · 来源: dl.fedoraproject.org

概览

软件包摘要

Bash-compatible Unix shell with more consistent syntax and semantics

命令和别名

  • oils-for-unix
  • osh
  • ysh

历史

项目历史与用法

Oils for Unix is a shell project that contains OSH, a POSIX/bash-compatible shell for existing scripts, and YSH, a newer shell language aimed at programmers who want shell's process orchestration with more regular syntax and data structures.

项目历史

Andy Chu began Oils in 2016 as an independent project to restore and re-imagine the Unix shell. The GitHub repository was created on 2016-11-15, and Chu's resume describes the work as an independent, non-profit language-engineering project funded by NLnet from 2022 to 2026.

The project deliberately took a compatibility-first path. Chu's 2021 explanation separates POSIX shell, bash, OSH, and Oil: OSH is the implementation intended to run existing shell scripts, while Oil was the incompatible new language intended to fix decades of accumulated shell language problems. The same essay says OSH had run existing scripts since January 2018 and had matured through regular releases.

In 2023 the project renamed itself from Oil/Oil Shell to Oils for Unix, with OSH and YSH as the named subprojects. The rename clarified the difference between the compatible shell and the new shell language, provided a globally unique package and project identity, and matched the busybox-like release layout with `oils-for-unix` plus `osh` and `ysh` symlinks.

采用历史

Oils has a larger footprint than the other shell packages in this batch: the GitHub API reported 3,357 stars and 193 forks for `oils-for-unix/oils`, and Homebrew's 2026-07-01 formula API reported 331 installs over 365 days. The formula also records the old Homebrew name `oil`, showing the packaging transition caused by the 2023 rename.

NLnet's project page frames Oils as an upgrade path from traditional shells like bash to a more structured language and runtime, with OSH running thousands of lines of unmodified POSIX and bash scripts and YSH offering a language influenced by Python, Ruby, JavaScript, JSON, and YAML. That external funding and packaging across Homebrew, apk, Nix, Arch, and openSUSE-style systems give Oils more than hobby-project status, even though it remains specialized.

使用方式

Developers use OSH to test or run existing shell scripts under a more explicit implementation, and use YSH for new scripts where shell-like command composition is useful but bash syntax is too irregular. The README shows `bin/osh` for interactive use or for running an existing script, and `bin/ysh` for the newer language.

The implementation model matters: the source is written in Python for easier development, then translated to C++ with custom tools so released executables are fast, small, and do not depend on Python. The project asks users to consume release tarballs from `oils.pub` rather than cloning the development repository.

为什么软件包爱好者会关心

Oils is significant because it treats shell as both legacy infrastructure and language-design territory. Package maintainers see the practical side in the formula: one source tarball installs `oils-for-unix`, `osh`, and `ysh`, depends on readline, and conflicts with packages that also install an `osh` binary.

For shell/package historians, Oils sits at the intersection of POSIX shell compatibility, bash's network effect, language migration strategy, and distribution naming. Its rename from `oil` to `oils-for-unix` is unusually well documented and visible directly in package-manager metadata.

时间线

  • 2016: Andy Chu began the Oils/Oil Shell work.
  • 2016-11-15: the GitHub repository was created.
  • 2018-01: OSH was documented by the project as running existing shell scripts.
  • 2022-04 to 2023-02: NLnet's NGI Assure grant period supported the Oil Shell project.
  • 2023-03-31: the project published the rename rationale for Oils, OSH, and YSH.
  • 2026-07-01: Homebrew's formula API reported stable version 0.37.0 and executables `oils-for-unix`, `osh`, and `ysh`.

Related projects

  • Oils is directly related to POSIX shell, GNU bash, zsh, fish, ksh-family shells, and other attempts to make shell programming safer or more regular. Its internal split between OSH and YSH is the central related-project relationship: OSH preserves compatibility, while YSH is the migration target.

安全态势

风险级别:yellow

generalized runtime or code generation signal.

风险分类器

yellow 风险 · 中 置信度 · runtime

原因

  • generalized runtime or code generation signal

信号

  • text:shell

安装行为

  • formula 元数据中未记录 Homebrew post-install 钩子。
  • Homebrew bottle 元数据适用于 6 个平台目标。
  • 安装时包含 1 个运行时依赖。

建议审查

在无人值守的代理使用前,请检查该工具是否读取明文凭据、写入远程状态、发布制品或调用插件。

可执行文件

已安装的可执行文件

命令类型暴露范围备注
oils-for-unixcli全局可执行文件
oshcli全局可执行文件
yshcli全局可执行文件

新鲜度

版本和新鲜度

这些信号区分页生成时间、软件包管理器活动和上游发布比较。只有存在证据 URL 和可比较版本时,才会提示版本落后。

页面生成时间2026-07-08
管理器版本0.37.0
管理器更新时间2026-06-22
本地数据OK
上游not checked
检测到的最新版本未检测到

https://oils.pub/

  • 信息Release/tag comparison is only available for GitHub repositories.https://oils.pub/none 置信度

安装元数据

软件包元数据

软件包键brew:oils-for-unix
版本0.37.0
软件包管理器Homebrew
软件包管理器页面https://formulae.brew.sh/formula/oils-for-unix
主页https://oils.pub/
仓库https://github.com/oils-for-unix/oils
上游文档https://github.com/oils-for-unix/oils#readme
许可证Apache-2.0
源码归档https://oils.pub/download/oils-for-unix-0.37.0.tar.gz
最后更新2026-06-22T14:05:40-07:00
Pulseupdated
依赖readline
Bottle可用 (于 arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, sonoma, x86_64_linux)
Homebrew post-install未定义
服务未声明

注册表事实

源数据库详情

Source DatabaseHomebrew formula API
Taphomebrew/core
Full Nameoils-for-unix
Version Scheme0
Revision0
Conflicts With
  • etsh
  • omake
Bottle Stable Root URLhttps://ghcr.io/v2/homebrew/core
Deprecatedno
Disabledno
Keg Onlyno
URL Keys
  • stable

源数据库匹配

其他软件包管理器记录

匹配项来自外部软件包管理器索引,并与本地 Automic Vault 软件包链接分开显示。

Nix95%

oils-for-unix

nix profile install nixpkgs#oils-for-unix
  • normalized package name match
  • 匹配方式:Oils For Unix
nixpkgs package indexes · api.github.com · nixpkgs package indexes: pkgs/by-name/oi/oils-for-unix/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1
apk95%

oils-for-unix 0.37.0-r0

Unix shell with JSON-compatible structured data

https://www.oils.pub/

sudo apk add oils-for-unix
  • License: Apache-2.0
  • Architecture: x86_64
  • Source Package: oils-for-unix
  • 1 依赖
  • 1 提供
  • normalized package name match
  • 匹配方式:Oils For Unix
Alpine Linux edge package indexes · dl-cdn.alpinelinux.org · Alpine Linux edge package indexes: oils-for-unix from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz
apk95%

oils-for-unix-bash 0.37.0-r0

oils-for-unix as /bin/bash

https://www.oils.pub/

sudo apk add oils-for-unix-bash
  • License: Apache-2.0
  • Architecture: x86_64
  • Source Package: oils-for-unix
  • 1 依赖
  • 1 提供
  • normalized package name match
  • 匹配方式:Oils For Unix
Alpine Linux edge package indexes · dl-cdn.alpinelinux.org · Alpine Linux edge package indexes: oils-for-unix-bash from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz
apk95%

oils-for-unix-binsh 0.37.0-r0

oils-for-unix as /bin/sh

https://www.oils.pub/

sudo apk add oils-for-unix-binsh
  • License: Apache-2.0
  • Architecture: x86_64
  • Source Package: oils-for-unix
  • 1 依赖
  • 1 提供
  • normalized package name match
  • 匹配方式:Oils For Unix
Alpine Linux edge package indexes · dl-cdn.alpinelinux.org · Alpine Linux edge package indexes: oils-for-unix-binsh from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz
apk95%

oils-for-unix-doc 0.37.0-r0

Unix shell with JSON-compatible structured data (documentation)

https://www.oils.pub/

sudo apk add oils-for-unix-doc
  • License: Apache-2.0
  • Architecture: x86_64
  • Source Package: oils-for-unix
  • normalized package name match
  • 匹配方式:Oils For Unix
Alpine Linux edge package indexes · dl-cdn.alpinelinux.org · Alpine Linux edge package indexes: oils-for-unix-doc from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz
pacman95%

oils-for-unix 0.37.0-3

Oils for Unix: OSH and YSH shells

https://oils.pub/

sudo pacman -S oils-for-unix
  • License: Apache-2.0
  • Architecture: x86_64
  • 7 依赖
  • normalized package name match
  • 匹配方式:Oils For Unix
Arch Linux sync databases · geo.mirror.pkgbuild.com · Arch Linux sync databases: oils-for-unix from https://geo.mirror.pkgbuild.com/extra/os/x86_64/extra.db.tar.gz
zypper95%

oils-for-unix 0.37.0-1.2

A bash compatible shell and a new modern shell

https://oils.pub

sudo zypper install oils-for-unix
  • License: Apache-2.0 AND CNRI-Python-GPL-Compatible
  • Category: Unspecified
  • Architecture: x86_64
  • Source Package: oils-for-unix
  • 5 依赖
  • 1 提供
  • normalized package name match
  • 匹配方式:Oils For Unix
openSUSE Tumbleweed package metadata · download.opensuse.org · openSUSE Tumbleweed package metadata: oils-for-unix from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst
dnf92%

osh-client 1.1.1-7.fc45

OpenScanHub CLI client

https://github.com/openscanhub/openscanhub/

sudo dnf install osh-client
  • License: GPL-3.0-or-later
  • Category: Unspecified
  • Architecture: noarch
  • Source Package: osh
  • 6 依赖
  • 6 提供
  • installed executable or alias match
  • 匹配方式:Osh
Fedora Rawhide package metadata · dl.fedoraproject.org · Fedora Rawhide package metadata: osh-client from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst
dnf92%

osh-common 1.1.1-7.fc45

OpenScanHub shared files for client, hub and worker

https://github.com/openscanhub/openscanhub/

sudo dnf install osh-common
  • License: GPL-3.0-or-later
  • Category: Unspecified
  • Architecture: noarch
  • Source Package: osh
  • 1 依赖
  • 1 提供
  • installed executable or alias match
  • 匹配方式:Osh
Fedora Rawhide package metadata · dl.fedoraproject.org · Fedora Rawhide package metadata: osh-common from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst
dnf92%

osh-hub 1.1.1-7.fc45

OpenScanHub xml-rpc interface and web application

https://github.com/openscanhub/openscanhub/

sudo dnf install osh-hub
  • License: GPL-3.0-or-later
  • Category: Unspecified
  • Architecture: noarch
  • Source Package: osh
  • 26 依赖
  • 1 提供
  • installed executable or alias match
  • 匹配方式:Osh
Fedora Rawhide package metadata · dl.fedoraproject.org · Fedora Rawhide package metadata: osh-hub from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst
dnf92%

osh-hub-conf-devel 1.1.1-7.fc45

OpenScanHub hub devel configuration

https://github.com/openscanhub/openscanhub/

sudo dnf install osh-hub-conf-devel
  • License: GPL-3.0-or-later
  • Category: Unspecified
  • Architecture: noarch
  • Source Package: osh
  • 4 依赖
  • 3 提供
  • installed executable or alias match
  • 匹配方式:Osh
Fedora Rawhide package metadata · dl.fedoraproject.org · Fedora Rawhide package metadata: osh-hub-conf-devel from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst
dnf92%

osh-worker 1.1.1-7.fc45

OpenScanHub worker

https://github.com/openscanhub/openscanhub/

sudo dnf install osh-worker
  • License: GPL-3.0-or-later
  • Category: Unspecified
  • Architecture: noarch
  • Source Package: osh
  • 11 依赖
  • 1 提供
  • installed executable or alias match
  • 匹配方式:Osh
Fedora Rawhide package metadata · dl.fedoraproject.org · Fedora Rawhide package metadata: osh-worker from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst
dnf92%

osh-worker-conf-devel 1.1.1-7.fc45

OpenScanHub worker devel configuration

https://github.com/openscanhub/openscanhub/

sudo dnf install osh-worker-conf-devel
  • License: GPL-3.0-or-later
  • Category: Unspecified
  • Architecture: noarch
  • Source Package: osh
  • 3 提供
  • installed executable or alias match
  • 匹配方式:Osh
Fedora Rawhide package metadata · dl.fedoraproject.org · Fedora Rawhide package metadata: osh-worker-conf-devel from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst
dnf92%

osh-worker-manager 1.1.1-7.fc45

OpenScanHub worker manager

https://github.com/openscanhub/openscanhub/

sudo dnf install osh-worker-manager
  • License: GPL-3.0-or-later
  • Category: Unspecified
  • Architecture: noarch
  • Source Package: osh
  • 3 依赖
  • 1 提供
  • installed executable or alias match
  • 匹配方式:Osh
Fedora Rawhide package metadata · dl.fedoraproject.org · Fedora Rawhide package metadata: osh-worker-manager from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst

来源线索

由仓库数据生成

此页面由 av-webscripts/generate-pkg-sqlite.py 生成的私有软件包 SQLite 工件提供。

使用的来源

  • Geiger risk classifier
  • Nucleus package database
  • av.db category and tag curation
  • cross-ecosystem install command graph
  • curated package history
  • external package-manager database matches
  • package relationship graph
  • package version freshness
  • package-page enrichment