# Install so with Homebrew, apk, MacPorts, Nix, scoop

Terminal interface for StackOverflow. Version 0.4.10 via Homebrew; verified 2026-07-28. Also installable with nix: nix profile install nixpkgs#so.

## Install

```sh
sudo av install brew:so
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install so
```

  Evidence: local Homebrew formula metadata

- MacPorts (94%):

```sh
sudo port install so
```

  Evidence: MacPorts ports tree: devel/so/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1

### Linux

- apk (92%):

```sh
sudo apk add so
```

  Evidence: Alpine Linux edge package indexes: so from https://dl-cdn.alpinelinux.org/alpine/edge/testing/x86_64/APKINDEX.tar.gz

- Nix (92%):

```sh
nix profile install nixpkgs#so
```

  Evidence: nixpkgs package indexes: pkgs/by-name/so/so/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1

### Windows

- Scoop (92%):

```sh
scoop install extras/so
```

  Evidence: Scoop official bucket manifest trees: bucket/so.json from https://api.github.com/repos/ScoopInstaller/Extras/git/trees/master?recursive=1

## Package facts

- **Package key:** brew:so
- **Package manager:** Homebrew
- **Version:** 0.4.10
- **Source summary:** Terminal interface for StackOverflow
- **Homepage:** <https://github.com/samtay/so>
- **Repository:** <https://github.com/samtay/so>
- **Last updated:** 2026-07-28T15:10:42+02:00
- **Generated:** 2026-08-03T19:37:03+00:00

## Executables

- so (alias)

## Install behavior

- Bottle: not available

## Freshness

- Page generated: 2026-08-03
- Package-manager version: 0.4.10
## Project history and usage

so is a Rust terminal interface for Stack Overflow and the broader Stack Exchange network. It packages the familiar developer reflex of searching Stack Overflow into a terminal UI, with multi-site search, configurable search engines, and install paths across common package managers.

### Project history

The git history shows an initial commit on May 30, 2020, followed by rapid 0.1 through 0.4 releases in June and July 2020. The changelog calls 0.3.5 the initial passable release and 0.4.0 the point where packaging, keybindings, and the changelog itself were formalized.

The README frames the program as more than a Stack Overflow-only client: it can search any number of Stack Exchange sites, and it distinguishes itself from similar terminal helpers by supporting simultaneous multi-site searches.

### Adoption history

Official installation docs list Arch AUR, FreeBSD ports, NetBSD pkgsrc, Homebrew, MacPorts, Scoop, crates.io, and release binaries. The changelog records Homebrew tap support in 0.4.0, a Homebrew core formula in 0.4.1, Windows/Scoop in 0.4.3, NetBSD in 0.4.5, and MacPorts in 0.4.10.

### How it is used

The documented workflow is direct shell search: run so followed by a natural-language query, optionally choose Stack Exchange sites with --site/-s, and choose search backends such as StackExchange or Google. The configuration file stores defaults such as limit, lucky mode, sites, search_engine, copy_cmd, and api_key.

### Why package nerds care

Package nerds care about so because it sits at the intersection of terminal UI culture, Rust CLI distribution, and developer knowledge retrieval. It is also a compact example of a personal CLI growing into multi-platform packaging across Unix, Windows, BSD, and Rust's cargo ecosystem.

### Timeline

- 2020: Initial git commit.
- 2020: v0.1.0 first tagged release.
- 2020: v0.4.0 added Arch and Homebrew tap installation options.
- 2020: v0.4.1 added Homebrew core formula support.
- 2021: v0.4.5 added NetBSD installation documentation.
- 2024: v0.4.10 fixed Cloudflare blocking issues and added MacPorts installation documentation.

### Related projects

- The README explicitly compares so with how2 and howdoi, while positioning so around Stack Exchange network search rather than a single source.

### Sources

- Official git tags from https://github.com/samtay/so.git
- <https://github.com/samtay/so#readme>
- <https://raw.githubusercontent.com/samtay/so/master/CHANGELOG.md>
- <https://raw.githubusercontent.com/samtay/so/master/README.md>


## Security Notes

narrow executable package without higher-risk signals.

- **Geiger risk:** green / low
- narrow executable package without higher-risk signals


## Configuration and credential file locations

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.


## Configuration files

- Linux: ~/.config/so/config.yml
- macOS: ~/Library/Preferences/io.Sam-Tay.so/config.yml
- Windows: %APPDATA%\Sam Tay\so\config.yml

## Credential files

- Linux: ~/.config/so/config.yml
- macOS: ~/Library/Preferences/io.Sam-Tay.so/config.yml
- Windows: %APPDATA%\Sam Tay\so\config.yml
## Other Package-Manager Records

- Nix - so: normalized package name match | nixpkgs package indexes: pkgs/by-name/so/so/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1
- apk - so - 0.4.10-r0: normalized package name match | Alpine Linux edge package indexes: so from https://dl-cdn.alpinelinux.org/alpine/edge/testing/x86_64/APKINDEX.tar.gz | Terminal interface for Stackoverflow | https://github.com/samtay/so
- MacPorts - so: normalized package name match | MacPorts ports tree: devel/so/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1
- Scoop - extras/so: normalized package name match | Scoop official bucket manifest trees: bucket/so.json from https://api.github.com/repos/ScoopInstaller/Extras/git/trees/master?recursive=1


## Combined YAML source

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


## Sources

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