Skip to content

Latest commit

 

History

63 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Sonido

Description

A sleek, terminal-based music player written in Rust

Table of Contents

  1. Sonido
  2. Description
  3. Table of Contents
  4. Features
  5. Controls
  6. Installation
  7. Configuration
  8. Usage
  9. Feedback
  10. License

Features

  • Play local audio files
  • Lightweight & fast
  • Navigate with only keyboard needed
  • Simple controls
  • Detailed metadata
  • Highly customizable

Controls

By default, the controls are:

  • Space -> Toggle playback
  • R -> Toggle repeat
  • -> Seek backward (-5s)
  • -> Seek forward (+5s)
  • -> Go to previous track
  • -> Go to next track
  • H -> Hide current track from playlist
  • C -> Reload config
  • Q -> Quit

But you can set everything as you want. The config file is located at ~/.config/sonido/config.toml, it will be created on first launch. If it doesn't show up, you can manually copy the default config)

Installation

It is recommended to install Sonido from AUR (Arch User Repository) if you are an Arch Linux user

You can use yay AUR helper:

yay -S sonido 

Or install manually:

git clone https://aur.archlinux.org/sonido.git && cd sonido/ && makepkg -si

If you use some other OS, read the instructions below:

  1. Clone the repository
    git clone https://github.com/desyatkoff/sonido.git
  2. Go to the repository directory
    cd sonido/
  3. Choose your installation way
    • Auto
      1. Run installer script
        sh install.sh
    • Manual
      1. Compile the Rust project
        cargo build --release
      2. Copy compiled binary to the /usr/bin/ directory
        sudo cp ./target/release/sonido /usr/bin/

Configuration

The config file will automatically created on first launch and will contain these settings:

[config]
toggle_playback = "space"
toggle_repeat = "r"
seek_backward = "left"
seek_forward = "right"
seek_step = 5
previous_track = "up"
next_track = "down"
hide_track = "h"
reload_config = "c"
quit = "q"
show_app_title = true
show_playlist_title = true
show_playlist_scrollbar = true
show_metadata_title = true
show_metadata_panel = true
show_progress_title = false
app_title_format = "┤ Sonido v{VERSION} ├"
playlist_title_format = "┤ Playlist ├"
metadata_title_format = "┤ Metadata ├"
progress_title_format = "┤ Progress ├"
app_title_alignment = "center"
playlist_title_alignment = "left"
metadata_title_alignment = "left"
progress_title_alignment = "left"
app_title_color = "blue"
playlist_color = "blue"
metadata_color = "blue"
progress_color = "blue"
rounded_corners = true

Note that in the app_title_format setting, the placeholder {VERSION} will be replaced with current app version installed. Press reload_config key or restart Sonido after editing to apply changes. Everything is simple and intuitive, so it's not necessary to write a whole guide on it

Config presets you can find here or simply make your own one

Usage

  • Get help
    • Short
      sonido -h
    • Full
      sonido --help
  • Get music from current working directory
    $ sonido
  • Get music recursively from current working directory (from all subdirectories)
    • Short
      sonido -r
    • Full
      sonido --recursive
  • Get music from ~/Music/
    sonido ~/Music/
  • Get music recursively from ~/Music/
    • Short
      sonido -r ~/Music/
    • Full
      sonido --recursive ~/Music/
  • Get version
    • Short
      sonido -V
    • Full
      sonido --version

Feedback

Found a bug? Open an issue

License

Copyright (C) 2025 Desyatkov Sergey

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see https://www.gnu.org/licenses/

About

A sleek, terminal-based music player written in Rust

Topics

Resources

Stars

3 stars

Watchers

1 watching

Forks

Releases

Contributors

Languages