Skip to content

barakadax/AudioControl

Repository files navigation

Audio manager

Simple app to control audio in linux

Build, Install & Run

Prerequisites

Ensure you have the necessary dependencies installed. The Makefile will verify this for you, but you can install them beforehand:

sudo apt install build-essential pkg-config libgtk-4-dev libpulse-dev libx11-dev

Compile

Simply run:

make

This will check for dependencies and compile the bam binary.

Run

./bam

Usage

Desktop Entry

  1. Edit the file ending with .desktop in this directory.
  2. Replace Exec & Icon paths with the correct absolute paths on your system.
  3. Copy the modified file to your applications folder:
    cp org.barakadax.audioManager.desktop ~/.local/share/applications/
  4. Update the desktop database to see immediate results:
    update-desktop-database ~/.local/share/applications/

Documentation

This project includes a manual page bam.1.

View Manual

To view the manual without installing:

man ./bam.1

Install Manual

To install the manual system-wide (requires sudo):

sudo mkdir -p /usr/local/share/man/man1/  # If directory doesn't exist
sudo cp bam.1 /usr/local/share/man/man1/
sudo mandb

Then you can run man bam from anywhere.

Styling

To style the app, create a file called style.css in the ~/.config/bam/ directory. The app will look for this file and apply the styles to the window. There is an example file style_template.css

Todo

  1. Add a button to the OS top bar so it's easy access to run the binary, use gs_logo
  2. Validate behavior on different resolutions
  3. Make sure always in the center of the screen
  4. Fix so logo will be also in ~/.config/bam/ and the .desktop file will point to it or un/install scripts
  5. Make sure to use the best practices of gtk and pulseaudio
  6. Redesign to use design pattern and enforce better memory handling and memory leaks than runtime performance
  7. Rewrite, make sure naming of structures, functions and variables are self explanatory
  8. Make sure clean code standards are followed, functions no longer than 20 lines and no comments in code
  9. GitHub actions

About

Linux Gnome low level program utilizing GTK4 to better control on Pulseaudio and Pipewire, controlling audio devices and audio per pid

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors