Awesome
<img src="https://raw.githubusercontent.com/afify/sfm/main/sfm.png" alt="sfm logo"/>simple file manager
Description
sfm is a simple file manager for unix-like systems.
- BSD kqueue(2) - kernel event notification mechanism.
- Linux inotify(7) - monitoring filesystem events.
- pthreads(7) to read events, no timers.
- dual pane.
- bookmarks.
- open files by extension.
- bottom statusbar.
- vim-like key bindings.
- no dependencies.
- search.
- Inspired by vifm and noice.
- Follows the suckless philosophy.
Patches
Performance
$ perf stat -r 10 sfm
Options
$ sfm [-v]
$ man sfm
<img src="https://afify.dev/img/sfm_sc.png" alt="sfm screenshot" width="800"/>
Installation
<a href="https://repology.org/project/sfm-afify/versions"> <img src="https://repology.org/badge/vertical-allrepos/sfm-afify.svg" alt="Packaging status"> </a>current
git clone https://github.com/afify/sfm
cd sfm/
make
make install
latest release
latest=$(curl -s https://api.github.com/repos/afify/sfm/releases/latest | grep -o '"tag_name": "[^"]*' | cut -d'"' -f4)
tgz="https://github.com/afify/sfm/archive/refs/tags/${latest}.tar.gz"
curl -L -o "sfm-${latest}.tar.gz" "${tgz}"
tar -xzf "sfm-${latest}.tar.gz"
cd "sfm-${latest#v}" && \
make && make install || echo "Build failed!"
Run
$ sfm
Configuration
The configuration of sfm is done by creating a custom config.h and (re)compiling the source code. This keeps it fast, secure and simple.