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: about 1 month 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 (about 4 years ago)
- Default Branch: main
- Last Pushed: 2023-04-01T12:14:37.000Z (about 1 year ago)
- Last Synced: 2024-05-08T03:49:36.709Z (about 1 month ago)
- Topics: c, file-manager, filemanager, sfm, simple, suckless, terminal, tty, tui
- Language: C
- Homepage: https://git.afify.dev/sfm
- Size: 252 KB
- Stars: 202
- Watchers: 8
- Forks: 18
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Lists
- awesome-ricing - sfm - similar file manager. (C) (Packages / CLI Tools)
- awesome-linux-minimalism - sfm - simple file manager (Uncategorized / Uncategorized)
- awesome-stars - afify/sfm - simple file manager (C)
README
**simple file manager**
[![Build status](https://ci.appveyor.com/api/projects/status/goq88ahjyvtjrui2?svg=true)](https://ci.appveyor.com/project/afify/sfm)
Description
------------
sfm is a simple file manager for unix-like systems.
* pthreads(7) to read events, no timers.
* BSD kqueue(2) - kernel event notification mechanism.
* Linux inotify(7) - monitoring filesystem events.
* dual pane.
* bookmarks.
* open files by extension.
* bottom statusbar.
* vim-like key bindings.
* filter.
* no dependencies.
* c99 static linking.
* based on [termbox](https://github.com/nsf/termbox).
* 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 git://git.afify.dev/sfm
cd sfm/
make
make install
```
**latest release**
```sh
[ "$(uname)" = "Linux" ] && shacmd="sha256sum" grepf="--color=never"|| shacmd="sha256"
latest=$(curl -s https://git.afify.dev/sfm/tags.xml | grep $grepf -m 1 -o "\[v.*\]" | tr -d '[]')
tgz="https://git.afify.dev/sfm/releases/sfm-${latest}.tar.gz"
sha="${tgz}.sha256"
wget "${tgz}"
wget "${sha}"
${shacmd} -c "sfm-${latest}.tar.gz.sha256" && \
tar -xzf "sfm-${latest}.tar.gz" && cd "sfm-${latest}" && \
make
make install
```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.