Skip to content

afify/sfm

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

sfm logo

simple file manager

Build status CodeQL Cross platform build FOSSA Status

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

sfm-patches

Performance

$ perf stat -r 10 sfm

Options

$ sfm [-v]
$ man sfm

sfm screenshot

Installation

Packaging status

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.

License

FOSSA Status