lowfi/README.md

108 lines
2.4 KiB
Markdown
Raw Normal View History

2024-09-23 19:59:07 +00:00
# lowfi
lowfi is a tiny rust app that serves a single purpose: play lofi.
It'll do this as simply as it can: no albums, no ads, just lofi.
2024-09-30 10:28:08 +00:00
![example image](media/example1.png)
2024-09-30 05:46:57 +00:00
2024-09-27 22:06:22 +00:00
## Disclaimer
**All** of the audio files played in lowfi are from [Lofi Girl's](https://lofigirl.com/) website,
under their [licensing guidelines](https://form.lofigirl.com/CommercialLicense).
If god forbid you're planning to use this in a commercial setting, please
follow their rules.
2024-09-23 19:59:07 +00:00
## Why?
I really hate modern music platforms, and I wanted a small, "suckless"
app that would literally just play lofi without video so I could use it
whenever.
2024-09-26 14:13:40 +00:00
I also wanted it to be fairly resiliant to inconsistent networks,
so it buffers 5 whole songs at a time instead of parts of the same song.
2024-09-27 22:06:22 +00:00
Although, lowfi is yet to be properly tested in difficult conditions,
so don't rely on it too much until I do that. See [Scraping](#scraping) if
you're interested in downloading the tracks. Beware, there's a lot of them.
2024-09-27 22:39:01 +00:00
## Installing
2024-10-07 20:47:32 +00:00
> [!NOTE]
>
2024-10-07 20:46:10 +00:00
> If you're interested in maintaining a package for `lowfi`
> on package managers such as homebrew and the like, open an issue.
### Dependencies
2024-10-01 17:36:35 +00:00
You'll need Rust 1.74.0+.
2024-10-07 20:46:10 +00:00
On MacOS & Windows, no extra dependencies are needed.
On Linux, you'll also need alsa and it's headers (`alsa-lib` on Arch,
`libasound2-dev` on Ubuntu). Make sure to also install `pulseaudio-alsa`
if you're using pulseaudio.
2024-10-04 09:37:52 +00:00
2024-09-27 22:39:01 +00:00
### Cargo
The recommended installation method is to use cargo:
```sh
cargo install lowfi
2024-10-07 20:46:10 +00:00
# If you want MPRIS support.
cargo install lowfi --features mpris
2024-09-27 22:39:01 +00:00
```
2024-10-01 17:36:35 +00:00
and making sure `$HOME/.cargo/bin` is added to `$PATH`.
2024-09-27 22:39:01 +00:00
### AUR
If you're on Arch, you can also use the AUR:
```sh
yay -S lowfi
```
2024-10-05 10:34:54 +00:00
### Manual
```sh
git clone https://github.com/talwat/lowfi
cd lowfi
cargo build --release
./target/release/lowfi
```
2024-09-27 22:06:22 +00:00
## Usage
`lowfi`
Yeah, that's it.
### Controls
| Key | Function |
|-------|----------------|
| `s` | Skip song |
| `p` | Play/Pause |
| `+/-` | Volume Up/Down |
| `q` | Quit |
2024-09-27 22:06:22 +00:00
2024-10-02 16:39:30 +00:00
### Extra Flags
2024-10-07 12:40:39 +00:00
If you have something you'd like to tweak about lowfi, you can run `lowfi help`
to view the available options.
2024-10-02 16:39:30 +00:00
2024-09-27 22:06:22 +00:00
### Scraping
lowfi also has a `scrape` command which is usually not relevant, but
if you're trying to download some files from Lofi Girls' website,
it can be useful.
An example of scrape is as follows,
`lowfi scrape --extension zip --include-full`
where more information can be found by running `lowfi help scrape`.