Skip to content
aevahoninPublic

About

Native/Rust local music player. Beautiful, fast, hi-res PCM, no Electron. Windows & Linux.

Topics

Resources

Stars

4 stars

Watchers

0 watching

Forks

Latest commit

 

History

40 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Nemesis

A local music player. Native UI on iced, no embedded browser.

Русский: README.ru.md

Releases: github.com/aevahonin/Nemesis/releases

Nemesis


What it does

On-disk library (mp3, flac, wav, ogg/Vorbis, opus, m4a/aac, alac), tabs for queue / albums / artists / tracks / folders / playlists, shuffle, repeat, crossfade, seek, favorites, CUE sheets, covers. Full-screen visualization: spectrum with peak-hold caps, album cover, expand button, cursor auto-hide. Frameless window, dark and light themes, Ru/En.

Normalization: ReplayGain tags with a target loudness (−24…−12 LUFS, default −18) and a clipping-protection toggle. Native format: the app outputs the file’s sample rate and bit depth and does not resample itself. PipeWire or shared WASAPI may still resample downstream. Exclusive mode, DSD, and PEQ are not in this release.

Playlists: create, add tracks, import m3u8 / m3u / pls (old m3u files in CP1251 are decoded too). Search: Enter plays the results starting from the first one.

Data: Linux ~/.nemesis/, Windows %USERPROFILE%\.nemesis\ (library, cover cache, window, settings).


Linux and Windows

Windows x86_64 smoke: window, scan, play/next/stop, SMTC, theme.

Linux (x86_64) Windows 10/11 (x86_64)
Scan, queue, shuffle, repeat, crossfade yes yes
Native PCM format yes yes
Volume in native format pactl (sink-input) WASAPI session volume
ReplayGain normalization, clipping guard yes yes
Visualization (fullscreen spectrum + cover) yes yes
Playlists, import m3u/m3u8/pls yes yes
Media keys without focus MPRIS (nemesis on D-Bus) SMTC
OS theme / accent portal, GNOME, KDE registry
Frameless, transparent window yes yes
Install .deb / .rpm / .pkg.tar.zst / tar.gz portable zip, no installer (installer soon)

Install

Use the x86_64 artifact on a typical PC.

Debian / Ubuntu (12+ / 22.04+)

sudo dpkg -i nemesis_*_amd64.deb
sudo apt-get install -f   # if dependencies are missing

You need PipeWire or PulseAudio and a GPU driver (Vulkan/OpenGL).

Fedora (39+)

sudo dnf install nemesis-*.x86_64.rpm

Arch / Manjaro / EndeavourOS

sudo pacman -U nemesis-*-x86_64.pkg.tar.zst

No AUR package yet.

Linux without a distro package

Extract nemesis-*-linux-x86_64.tar.gz at / (it contains usr/bin/nemesis and a .desktop file). Or run the binary from usr/bin/ on a system with a matching glibc.

Windows

Unzip nemesis-*-windows-x86_64-portable.zip and run nemesis.exe. No extra DLLs. It does not add itself to the Start menu.


Support matrix

Build Status
Linux x86_64, glibc ≥ 2.36 (Debian 12, Ubuntu 22.04, Fedora 39+, current Arch) primary
Windows 10/11 x86_64 primary, portable
Linux aarch64, Windows ARM64 experimental

Experimental builds have not been run anywhere: the package may not install, the window or audio may not start. For daily use, stick to x86_64.

Still untested (reports welcome if you try):

  • a DE / compositor other than GNOME/KDE
  • HiDPI, multi-monitor, Windows snap
  • headset hardware keys, SMTC/MPRIS from the OS UI
  • large libraries, CUE, odd tags
  • native format 24-bit / 96 kHz on a given device
  • Windows ARM / Linux ARM

Stack

Rust, iced 0.14, wgpu, rodio, cpal, Symphonia (flac / alac / mp4 / mp3 / ogg / wav), libopus via audiopus, Lofty, rusqlite (SQLite linked in), rfd (file/folder dialogs), souvlaki (media keys). Audio: ALSA → PipeWire/Pulse on Linux, WASAPI on Windows.


Feedback

Issues on this repo.

Please include:

  1. OS and version (e.g. Arch, Ubuntu 24.04, Windows 11 23H2), desktop (GNOME / KDE / other).
  2. Architecture: x86_64 or ARM.
  3. Exact release filename (nemesis_…deb, zip, …).
  4. Version from About.
  5. What you did, what you expected, what happened. A screenshot for UI bugs.
  6. Native format on/off, problem file format (flac 16/44.1, etc.).

Windows release has no console, so there is no cmd log. On Linux, paste terminal output if you launched it from a terminal.

Do not attach the whole library or library.db. One file that reproduces the bug (if you can share it) plus steps is enough.

About

Native/Rust local music player. Beautiful, fast, hi-res PCM, no Electron. Windows & Linux.

Topics

Resources

Stars

4 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors