# Install avfs with Homebrew, apk, apt, Nix, pacman, zypper

Virtual file system that facilitates looking inside archives. Version 1.3.0 via Homebrew; verified from local package data. Also installable with debian: sudo apt install avfs.

## Install

```sh
sudo av install brew:avfs
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install avfs
```

  Evidence: local Homebrew formula metadata

### Linux

- apk (92%):

```sh
sudo apk add avfs
```

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

- Debian apt (92%):

```sh
sudo apt install avfs
```

  Evidence: Debian stable package indexes: avfs from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz

- Nix (92%):

```sh
nix profile install nixpkgs#avfs
```

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

- pacman (92%):

```sh
sudo pacman -S avfs
```

  Evidence: Arch Linux sync databases: avfs from https://geo.mirror.pkgbuild.com/extra/os/x86_64/extra.db.tar.gz

- zypper (92%):

```sh
sudo zypper install avfs
```

  Evidence: openSUSE Tumbleweed package metadata: avfs from https://download.opensuse.org/tumbleweed/repo/oss/repodata/50b07339cb64c8ed4091bdbabddadc1ff5737b090e478818a195b40d8a3292861a879139b4a3987c31109699fde9fbf4a716367ddf4eef77da75f96e3193d6ed-primary.xml.zst

## Package facts

- **Package key:** brew:avfs
- **Package manager:** Homebrew
- **Version:** 1.3.0
- **Source summary:** Virtual file system that facilitates looking inside archives
- **Homepage:** <https://avf.sourceforge.net/>
- **Generated:** 2026-08-03T19:37:03+00:00

## Executables

- avfs-config (alias)
- avfsd (alias)
- davpass (alias)
- ftppass (alias)
- mountavfs (alias)
- umountavfs (alias)

## Install behavior

- Bottle: not available

## Freshness

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

AVFS is a virtual filesystem for looking inside archives, compressed files, and some remote resources through ordinary file operations. Its distinctive user interface is the `#` path syntax, where a regular archive path can become a browsable virtual directory.

### Project history

AVFS began as a userspace filesystem experiment for archive and remote-file access. Its own NEWS file records a version 0.1 first release, then rapid additions of ZIP, RAR, symbolic links, Solaris support, autoconf, and Midnight Commander external filesystem handlers in the early 0.x series.

The project changed shape as Unix filesystem integration changed. Version 0.5 introduced avfscoda because the preload method would not work for GLIBC 2.1 and newer. Version 0.9.0 was a major rewrite that changed the magic character from `@` to `#`, added ftp, http, rsh, and dav handlers, and reworked caching and multithreaded operation. Version 0.9.7 added FUSE support, which became the more durable packaging story for modern Linux systems.

AVFS continued to receive maintenance long after its early SourceForge-era design. Later releases added xz/lzma, zip64, lzip, zstd, rar 5, macOS build fixes, FUSE 3 support, and large-file/time_t fixes, keeping a very old idea usable on current systems.

### Adoption history

AVFS is packaged across a wide spread of Unix-like distributions in the batch input: Alpine, Homebrew, Debian, Nix, Arch, Ubuntu, and openSUSE. That adoption pattern fits a mature system utility whose value is broad but specialized.

The README frames AVFS as something any program can use without recompilation or kernel changes. Package adoption likely followed from that generic utility: shells, editors, file managers, and scripts can browse archives through the same virtual path model.

### How it is used

Typical usage is to append `#` to an archive path, such as listing `file.tgz#/` or copying files out of `zipfile.zip#/*`. The README also documents virtual handlers for ftp, ssh, http, WebDAV, floppies, package formats, and the `/#avfsstat` control/status namespace.

Modern users mostly care about `avfsd`, `mountavfs`, and the FUSE form. The older library and preload approaches remain part of the project's history, but FUSE made AVFS fit normal package-manager expectations better.

### Why package nerds care

AVFS is interesting because it packages a shell-native alternative to one-off archive commands. Instead of teaching every tool about tar, zip, gzip, or remote protocols, AVFS makes those resources look like directories.

It is also a long-lived SourceForge project that survived multiple Unix eras: LD_PRELOAD tricks, CODA, FUSE, 32-bit limits, new compression formats, and distribution hardening. That makes it a tidy example of compatibility maintenance as package culture.

### Timeline

- 0.1: First release.
- 0.2: ZIP support, partial RAR support, Solaris stability, modular handlers.
- 0.5: avfscoda introduced for newer GLIBC systems.
- 0.9.0: Major rewrite; magic character changed to `#`; ftp, http, rsh, and dav handlers added.
- 2006: Version 0.9.7 added FUSE installation support.
- 2011: Version 1.0.0 released.
- 2019: Version 1.1.0 removed CODA and PRELOAD support.
- 2026: Version 1.3.0 added FUSE 3 support and made system zlib the default when available.

### Related projects

- Midnight Commander's extfs handlers are used by AVFS for several archive and package formats.
- Pavel Machek's podfuk is listed by the AVFS homepage as a similar userspace filesystem project.

### Sources

- <https://avf.sourceforge.net/>
- <https://sourceforge.net/p/avf/git/ci/master/tree/NEWS>
- <https://sourceforge.net/p/avf/git/ci/master/tree/README>
- source_facts.package-manager


## Security Notes

broad file, network, media, or database tool signal.

- **Geiger risk:** blue / medium
- broad file, network, media, or database tool signal

## Other Package-Manager Records

- Debian apt - avfs - 1.2.0-2: normalized package name match | Debian stable package indexes: avfs from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | virtual filesystem to access archives, disk images, remote locations | https://avf.sourceforge.net/
- Nix - avfs: normalized package name match | nixpkgs package indexes: pkgs/by-name/av/avfs/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1
- Ubuntu apt - avfs - 1.1.5-1build2: normalized package name match | Ubuntu 24.04 LTS package indexes: avfs from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | virtual filesystem to access archives, disk images, remote locations | http://sourceforge.net/projects/avf
- apk - avfs - 1.3.0-r0: normalized package name match | Alpine Linux edge package indexes: avfs from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz | A Virtual File System for looking into archives | https://avf.sourceforge.net/
- apk - avfs-dev - 1.3.0-r0: normalized package name match | Alpine Linux edge package indexes: avfs-dev from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz | A Virtual File System for looking into archives (development files) | https://avf.sourceforge.net/
- apk - avfs-libs - 1.3.0-r0: normalized package name match | Alpine Linux edge package indexes: avfs-libs from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz | A Virtual File System for looking into archives (libraries) | https://avf.sourceforge.net/
- pacman - avfs - 1.3.0-1: normalized package name match | Arch Linux sync databases: avfs from https://geo.mirror.pkgbuild.com/extra/os/x86_64/extra.db.tar.gz | Virtual filesystem that allows browsing compressed files | http://avf.sourceforge.net/
- zypper - avfs - 1.2.0-3.6: normalized package name match | openSUSE Tumbleweed package metadata: avfs from https://download.opensuse.org/tumbleweed/repo/oss/repodata/50b07339cb64c8ed4091bdbabddadc1ff5737b090e478818a195b40d8a3292861a879139b4a3987c31109699fde9fbf4a716367ddf4eef77da75f96e3193d6ed-primary.xml.zst | AVFS - an archive look-inside filesystem | https://avf.sourceforge.net/
- zypper - avfs-devel - 1.2.0-3.6: normalized package name match | openSUSE Tumbleweed package metadata: avfs-devel from https://download.opensuse.org/tumbleweed/repo/oss/repodata/50b07339cb64c8ed4091bdbabddadc1ff5737b090e478818a195b40d8a3292861a879139b4a3987c31109699fde9fbf4a716367ddf4eef77da75f96e3193d6ed-primary.xml.zst | Development files for AVFS, an archive look-inside filesystem | https://avf.sourceforge.net/
- zypper - libavfs1 - 1.2.0-3.6: normalized package name match | openSUSE Tumbleweed package metadata: libavfs1 from https://download.opensuse.org/tumbleweed/repo/oss/repodata/50b07339cb64c8ed4091bdbabddadc1ff5737b090e478818a195b40d8a3292861a879139b4a3987c31109699fde9fbf4a716367ddf4eef77da75f96e3193d6ed-primary.xml.zst | Shared library for AVFS, an archive look-inside filesystem | https://avf.sourceforge.net/


## Combined YAML source

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


## Sources

- 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
