Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/afify/sfm
simple file manager
https://github.com/afify/sfm
c file-manager filemanager sfm simple suckless terminal tty tui
Last synced: 20 days ago
JSON representation
simple file manager
- Host: GitHub
- URL: https://github.com/afify/sfm
- Owner: afify
- License: isc
- Created: 2020-06-10T01:08:12.000Z (over 4 years ago)
- Default Branch: main
- Last Pushed: 2024-05-28T19:13:21.000Z (7 months ago)
- Last Synced: 2024-05-28T22:50:30.146Z (7 months ago)
- Topics: c, file-manager, filemanager, sfm, simple, suckless, terminal, tty, tui
- Language: C
- Homepage:
- Size: 252 KB
- Stars: 206
- Watchers: 8
- Forks: 18
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-linux-minimalism - sfm - simple file manager (Uncategorized / Uncategorized)
README
**simple file manager**
[![Build status](https://ci.appveyor.com/api/projects/status/goq88ahjyvtjrui2?svg=true)](https://ci.appveyor.com/project/afify/sfm)
[![CodeQL](https://github.com/afify/sfm/actions/workflows/github-code-scanning/codeql/badge.svg)](https://github.com/afify/sfm/actions/workflows/github-code-scanning/codeql)
[![Cross platform build](https://github.com/afify/sfm/actions/workflows/action.yaml/badge.svg)](https://github.com/afify/sfm/actions/workflows/action.yaml)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](https://vifm.info/) and [noice](https://git.2f30.org/noice/).
* Follows the suckless [philosophy](https://suckless.org/philosophy/).Patches
-------
[sfm-patches](https://github.com/afify/sfm-patches)Performance
------------
```sh
$ perf stat -r 10 sfm
```Options
-------
```sh
$ sfm [-v]
$ man sfm
```**current**
```sh
git clone https://github.com/afify/sfm
cd sfm/
make
make install
```
**latest release**
```sh
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
---
```sh
$ 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.