# Install smlpkg with Homebrew, MacPorts, Nix

Package manager for Standard ML libraries and programs. Version 0.1.7 via Homebrew; verified from local package data. Also installable with nix: nix profile install nixpkgs#smlpkg.

## Install

```sh
sudo av install brew:smlpkg
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install smlpkg
```

  Evidence: local Homebrew formula metadata

- MacPorts (94%):

```sh
sudo port install smlpkg
```

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

### Linux

- Nix (92%):

```sh
nix profile install nixpkgs#smlpkg
```

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

## Package facts

- **Package key:** brew:smlpkg
- **Package manager:** Homebrew
- **Version:** 0.1.7
- **Source summary:** Package manager for Standard ML libraries and programs
- **Homepage:** <https://github.com/diku-dk/smlpkg>
- **Repository:** <https://github.com/diku-dk/smlpkg>
- **Generated:** 2026-08-03T19:37:03+00:00

## Executables

- smlpkg (alias)

## Install behavior

- Bottle: not available

## Freshness

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

smlpkg is a generic package manager for Standard ML libraries and programs.

### Project history

The official README says smlpkg assumes nothing about the Standard ML compiler in use and centers package handling around semantic versioning.

The README also says the package manager is almost a complete port of the Futhark package manager, which was designed and implemented in Haskell by Troels Henriksen.

### Adoption history

The official README lists Standard ML package examples across MLKit, MLton, SMLtoJs, and PolyML-oriented workflows.

Input package facts show distribution through Homebrew, MacPorts, and Nix.

### How it is used

`smlpkg add github.com/diku-dk/sml-random` adds a dependency, modifying or creating `sml.pkg`.

`smlpkg sync` populates the `lib` directory from dependencies listed in `sml.pkg`.

### Why package nerds care

smlpkg matters because Standard ML historically lacked a single dominant package-manager workflow; this project gives SML libraries a small semver-based dependency tool.

Its compiler-agnostic stance makes it relevant across MLton, MLKit, SMLtoJs, and related SML ecosystems.

### Timeline

- 2026: Official GitHub releases list v0.1.7 as the latest release dated 2026-01-09.

### Related projects

- Related projects named by the official README include Futhark's package manager, MLton, MLKit, SMLtoJs, GitHub, and GitLab.

### Sources

- <https://github.com/diku-dk/smlpkg#readme>
- source_facts.package-manager


## Security Notes

infrastructure mutation or orchestration signal.

- **Geiger risk:** orange / medium
- infrastructure mutation or orchestration signal


## 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

- Unix: sml.pkg
## Other Package-Manager Records

- Nix - smlpkg: normalized package name match | nixpkgs package indexes: pkgs/by-name/sm/smlpkg/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1
- MacPorts - smlpkg: normalized package name match | MacPorts ports tree: devel/smlpkg/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1


## Combined YAML source

View the package source record on GitHub. [combined/smlpkg.yml](https://github.com/mxcl/pkgdb/blob/main/combined/smlpkg.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
