parent
e22014ed4f
commit
0b4c16d229
@ -0,0 +1,73 @@ |
||||
{ lib |
||||
, buildPythonApplication |
||||
, fetchFromGitHub |
||||
, gobject-introspection |
||||
, gtk3 |
||||
, libappindicator |
||||
, libpulseaudio |
||||
, librsvg |
||||
, pycairo |
||||
, pygobject3 |
||||
, six |
||||
, wrapGAppsHook |
||||
, xlib |
||||
}: |
||||
|
||||
buildPythonApplication { |
||||
pname = "hushboard"; |
||||
version = "unstable-2021-03-17"; |
||||
|
||||
src = fetchFromGitHub { |
||||
owner = "stuartlangridge"; |
||||
repo = "hushboard"; |
||||
rev = "c16611c539be111891116a737b02c5fb359ad1fc"; |
||||
sha256 = "06jav6j0bsxhawrq31cnls8zpf80fpwk0cak5s82js6wl4vw2582"; |
||||
}; |
||||
|
||||
nativeBuildInputs = [ |
||||
wrapGAppsHook |
||||
]; |
||||
|
||||
buildInputs = [ |
||||
gobject-introspection |
||||
gtk3 |
||||
libappindicator |
||||
libpulseaudio |
||||
]; |
||||
|
||||
propagatedBuildInputs = [ |
||||
pycairo |
||||
pygobject3 |
||||
six |
||||
xlib |
||||
]; |
||||
|
||||
postPatch = '' |
||||
substituteInPlace hushboard/_pulsectl.py \ |
||||
--replace "ctypes.util.find_library('libpulse') or 'libpulse.so.0'" "'${libpulseaudio}/lib/libpulse.so.0'" |
||||
substituteInPlace snap/gui/hushboard.desktop \ |
||||
--replace "\''${SNAP}/hushboard/icons/hushboard.svg" "hushboard" |
||||
''; |
||||
|
||||
postInstall = '' |
||||
# Fix tray icon, see e.g. https://github.com/NixOS/nixpkgs/pull/43421 |
||||
wrapProgram $out/bin/hushboard \ |
||||
--set GDK_PIXBUF_MODULE_FILE "${librsvg.out}/lib/gdk-pixbuf-2.0/2.10.0/loaders.cache" |
||||
|
||||
mkdir -p $out/share/applications $out/share/icons/hicolor/{scalable,512x512}/apps |
||||
cp snap/gui/hushboard.desktop $out/share/applications |
||||
cp hushboard/icons/hushboard.svg $out/share/icons/hicolor/scalable/apps |
||||
cp hushboard-512.png $out/share/icons/hicolor/512x512/apps/hushboard.png |
||||
''; |
||||
|
||||
# There are no tests |
||||
doCheck = false; |
||||
|
||||
meta = with lib; { |
||||
homepage = "https://kryogenix.org/code/hushboard/"; |
||||
license = licenses.mit; |
||||
description = "Mute your microphone while typing"; |
||||
platforms = platforms.linux; |
||||
maintainers = with maintainers; [ sersorrel ]; |
||||
}; |
||||
} |
Loading…
Reference in new issue