Coder Social home page Coder Social logo

junker / mictray Goto Github PK

View Code? Open in Web Editor NEW
38.0 3.0 3.0 38 KB

MicTray is a Lightweight system tray application which lets you control the microphone state and volume

License: GNU General Public License v3.0

Meson 4.93% Vala 95.07%
linux microphone-state tray volume pulseaudio privacy

mictray's Introduction

Build Status

MicTray

MicTray is a Lightweight application which lets you control the microphone state and volume from system tray

Requirements

  • PulseAudio
  • Gtk

Control

  • Left-Button click - mute/unmute
  • Middle-Button click - mixer
  • Srcoll - Volume up/down

Build & Install

meson build --prefix=/usr
cd build
ninja
sudo ninja install

Install from Arch Linux & Manjaro

yaourt -S mictray

Install from Ubuntu

add-apt-repository ppa:mictray/mictray
apt-get update
apt-get install mictray

DBUS

Path: /app/junker/mictray
Interface: app.junker.mictray

DBUS methods

  • ToggleMute
  • Mute
  • Unmute
  • IncreaseVolume
  • DecreaseVolume

DBUS usage example

dbus-send --dest=app.junker.mictray --print-reply /app/junker/mictray app.junker.mictray.ToggleMute

mictray's People

Contributors

junker avatar mystic-mirage avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

mictray's Issues

Segfaults when no notification server is installed

Double clicking on the tray icon when no notification server is installed coredumps. After installing one (I tested with Dunst) things work like expected. Might not be the most common case but I want to have my peace on my workstation :)

** (mictray:45840): ERROR **: 13:13:00.631: notification.vala:26: Error: GDBus.Error:org.freedesktop.DBus.Error.ServiceUnknown: The name org.freedesktop.Notifications was not provided by any .service files
Trace/breakpoint trap (core dumped)

Indicate when microphone is in use

It would be great to indicate when microphone in use by one of application. Such feature is built in KDE.
This can be very helpful to know if some of your apps still record your voice to avoid unexpected recordings.

Suggestion: change color of microphone icon to red when mic in use.

How/where to use visually?

In short: It works with dbus-send. But no idea how to use it with left/middle button or scroll.

GNOME 45.4, X11, current Manjaro, installed from your AUR package. Confirming that dbus-send --dest=app.junker.mictray --print-reply /app/junker/mictray app.junker.mictray.ToggleMute toggles it. (I can see the change in GNOME "Settings" app.)

I have a Top Panel, with many GNOME extensions, Tweaks, Just Perfection settings... Dash is moved to Dock and right side with "Dash to Dock" GNOME extension (built-in/distributed with Manjaro).

"MicTray" is discoverable in GNOME Overview, and I can pin it to the Dash. But, when I run it, it doesn't seem to do anything. No window. No obvious change in the Top Panel, nor Dash.
Please help.

mictray stopped working several months ago on Arch Linux with dumped core

Thanks for this program. I really love it.

Unfortunately, starting several months ago, mictray has been crashing within instants of being launched with dumped core.

Here is the message in journalctl:

-- Subject: Process xxxx (mictray) dumped core
-- Defined-By: systemd
-- Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
-- Documentation: man:core(5)
-- 
-- Process 25800 (mictray) crashed and dumped core.
-- 
-- This usually indicates a programming error in the crashing program and
-- should be reported to its vendor as a bug.

Notification is shown during start

Every time MicTray starts a notification is shown.

I prefer not to see it. The volume control app doesn't show notification during the start. Let's do the same.

Compilation Error

Hi,

Tried to install this via AUR and to compile manually. In both cases I get

ninja
[1/7] Compiling Vala source ../src/mic...icon.vala ../src/settings-window.vala.
FAILED: mictray@exe/src/mictray.c mictray@exe/src/pulse.c mictray@exe/src/config-file.c mictray@exe/src/status-icon.c mictray@exe/src/settings-window.c 
valac -C --debug --debug --pkg gee-0.8 --pkg libpulse-mainloop-glib --pkg libpulse --pkg gtk+-3.0 --color=always --directory mictray@exe --basedir ../ ../src/mictray.vala ../src/pulse.vala ../src/config-file.vala ../src/status-icon.vala ../src/settings-window.vala
../src/pulse.vala:75.26-75.50: error: The name `DONE' does not exist in the context of `PulseAudio.Operation'
			if (op.get_state() == PulseAudio.Operation.DONE)
			                      ^^^^^^^^^^^^^^^^^^^^^^^^^
Compilation failed: 1 error(s), 0 warning(s)
ninja: build stopped: subcommand failed.

Add option for changing mixer command

When starting the mixer, mictray tries to run the command "pavucontrol". I am using "pavucontrol-qt", so the mixer doesn't start. Maybe it would be possible to have an option that allows the user to change the mixer command?

Changing volume doesn't affect volume

Just built from git, on Arch, I get the tray icon and notifications on scroll up down etc, but the audio level doesn't change, nor does the level of the selected or default device in pavucontrol.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.