https://github.com/alexcoder04/frei
Modern replacement for `free`
https://github.com/alexcoder04/frei
free go golang linux memory ram rewrite unix
Last synced: 3 months ago
JSON representation
Modern replacement for `free`
- Host: GitHub
- URL: https://github.com/alexcoder04/frei
- Owner: alexcoder04
- License: gpl-3.0
- Created: 2022-02-05T16:10:46.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2025-04-02T21:25:47.000Z (3 months ago)
- Last Synced: 2025-04-02T22:27:12.040Z (3 months ago)
- Topics: free, go, golang, linux, memory, ram, rewrite, unix
- Language: Go
- Homepage:
- Size: 161 KB
- Stars: 3
- Watchers: 1
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# frei (FREe Improved)

Since almost every basic command nowadays has a fancy Rust or Go rewrite, `free`
should not be an exception.In case you didn't know, `free` shows your memory usage on Unix-based systems.
`frei` obtains memory data from `/proc/meminfo` and represents it in a colored
bar chart using the same color-coding for as `htop`.## Installation
### Arch Linux
`frei` is available on the [AUR](https://aur.archlinux.org/packages/frei).
### Pre-compiled binaries
Binaries for `i386`, `amd64` and `arm` are available on the [releases
page](https://github.com/alexcoder04/frei/releases/latest).### Compiling from source
Make sure you have [Go](https://go.dev/doc/install) installed.
```sh
git clone https://github.com/alexcoder04/frei.git
cd freigo build . # builds a binary
go install . # builds and install a binary to your $GOPATH
```## Command-line options
| option | description |
|------------|---------------------------------------------------|
| `-help` | show list of options |
| `-h` | human-readable numbers (implies `-table`) |
| `-table` | print table with numbers in addition to the chart |
| `-version` | print version and exit |## Contributing
I appreciate any kind of improvement/feature ideas or bug reports. Don't
hesitate to open an [issue](https://github.com/alexcoder04/frei/issues).## FAQ
### What is the differerence between "free" and "available" memory?
For more detailed information, see [`free(1)`](https://man.archlinux.org/man/free.1).
"Free" (`MemFree` in `/proc/meminfo`) reports just the amount of memory that is
currently not in use. "Available" (`MemAvailable` in `/proc/meminfo`), on the
other side, is a more sophisticated estimation of how much memory is available
for starting new applications, without swapping. It takes into account the page
size and how much of reclaimable memory can actually be reclaimed.