Merge pull request #249860 from errnoh/goxlr-utility
goxlr-utility: init at 0.12.6 (fixes #243701)
This commit is contained in:
@@ -5177,6 +5177,11 @@
|
|||||||
githubId = 1583484;
|
githubId = 1583484;
|
||||||
name = "Andrey Golovizin";
|
name = "Andrey Golovizin";
|
||||||
};
|
};
|
||||||
|
errnoh = {
|
||||||
|
github = "errnoh";
|
||||||
|
githubId = 373946;
|
||||||
|
name = "Erno Hopearuoho";
|
||||||
|
};
|
||||||
ersin = {
|
ersin = {
|
||||||
email = "me@ersinakinci.com";
|
email = "me@ersinakinci.com";
|
||||||
github = "ersinakinci";
|
github = "ersinakinci";
|
||||||
|
|||||||
@@ -319,6 +319,7 @@
|
|||||||
./services/audio/botamusique.nix
|
./services/audio/botamusique.nix
|
||||||
./services/audio/gmediarender.nix
|
./services/audio/gmediarender.nix
|
||||||
./services/audio/gonic.nix
|
./services/audio/gonic.nix
|
||||||
|
./services/audio/goxlr-utility.nix
|
||||||
./services/audio/hqplayerd.nix
|
./services/audio/hqplayerd.nix
|
||||||
./services/audio/icecast.nix
|
./services/audio/icecast.nix
|
||||||
./services/audio/jack.nix
|
./services/audio/jack.nix
|
||||||
|
|||||||
48
nixos/modules/services/audio/goxlr-utility.nix
Normal file
48
nixos/modules/services/audio/goxlr-utility.nix
Normal file
@@ -0,0 +1,48 @@
|
|||||||
|
{ config, lib, pkgs, ... }:
|
||||||
|
|
||||||
|
let
|
||||||
|
cfg = config.services.goxlr-utility;
|
||||||
|
in
|
||||||
|
|
||||||
|
with lib;
|
||||||
|
{
|
||||||
|
|
||||||
|
options = {
|
||||||
|
services.goxlr-utility = {
|
||||||
|
enable = mkOption {
|
||||||
|
default = false;
|
||||||
|
type = types.bool;
|
||||||
|
description = lib.mdDoc ''
|
||||||
|
Whether to enable goxlr-utility for controlling your TC-Helicon GoXLR or GoXLR Mini
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
package = mkPackageOptionMD pkgs "goxlr-utility" { };
|
||||||
|
autoStart.xdg = mkOption {
|
||||||
|
default = true;
|
||||||
|
type = with types; bool;
|
||||||
|
description = lib.mdDoc ''
|
||||||
|
Start the daemon automatically using XDG autostart.
|
||||||
|
Sets `xdg.autostart.enable = true` if not already enabled.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
config = mkIf config.services.goxlr-utility.enable
|
||||||
|
{
|
||||||
|
services.udev.packages = [ cfg.package ];
|
||||||
|
|
||||||
|
xdg.autostart.enable = mkIf cfg.autoStart.xdg true;
|
||||||
|
environment.systemPackages = mkIf cfg.autoStart.xdg
|
||||||
|
[
|
||||||
|
cfg.package
|
||||||
|
(pkgs.makeAutostartItem
|
||||||
|
{
|
||||||
|
name = "goxlr-utility";
|
||||||
|
package = cfg.package;
|
||||||
|
})
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
|
meta.maintainers = with maintainers; [ errnoh ];
|
||||||
|
}
|
||||||
65
pkgs/tools/audio/goxlr-utility/default.nix
Normal file
65
pkgs/tools/audio/goxlr-utility/default.nix
Normal file
@@ -0,0 +1,65 @@
|
|||||||
|
{ lib
|
||||||
|
, fetchFromGitHub
|
||||||
|
, rustPlatform
|
||||||
|
, installShellFiles
|
||||||
|
, pkg-config
|
||||||
|
, libpulseaudio
|
||||||
|
, dbus
|
||||||
|
, speechd
|
||||||
|
}:
|
||||||
|
|
||||||
|
rustPlatform.buildRustPackage rec {
|
||||||
|
pname = "goxlr-utility";
|
||||||
|
version = "0.12.6";
|
||||||
|
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "GoXLR-on-Linux";
|
||||||
|
repo = "goxlr-utility";
|
||||||
|
rev = "v${version}";
|
||||||
|
hash = "sha256-vvaKCsqncRhag8IrS0AIfNqNHGU2WIvFaYISEVfUB2Y=";
|
||||||
|
};
|
||||||
|
|
||||||
|
cargoHash = "sha256-Z57H5YeVYqlOaLRLaizVw8xTLstdjyXutnN7OgaUYOE=";
|
||||||
|
|
||||||
|
buildInputs = [
|
||||||
|
libpulseaudio
|
||||||
|
dbus
|
||||||
|
speechd
|
||||||
|
];
|
||||||
|
|
||||||
|
nativeBuildInputs = [
|
||||||
|
pkg-config
|
||||||
|
installShellFiles
|
||||||
|
rustPlatform.bindgenHook
|
||||||
|
];
|
||||||
|
|
||||||
|
buildFeatures = [ "tts" ];
|
||||||
|
|
||||||
|
postInstall = ''
|
||||||
|
install -Dm644 "50-goxlr.rules" "$out/etc/udev/rules.d/50-goxlr.rules"
|
||||||
|
|
||||||
|
install -Dm644 "daemon/resources/goxlr-utility.png" "$out/share/icons/hicolor/48x48/apps/goxlr-utility.png"
|
||||||
|
install -Dm644 "daemon/resources/goxlr-utility.svg" "$out/share/icons/hicolor/scalable/apps/goxlr-utility.svg"
|
||||||
|
install -Dm644 "daemon/resources/goxlr-utility-large.png" "$out/share/pixmaps/goxlr-utility.png"
|
||||||
|
install -Dm644 "daemon/resources/goxlr-utility.desktop" "$out/share/applications/goxlr-utility.desktop"
|
||||||
|
substituteInPlace $out/share/applications/goxlr-utility.desktop \
|
||||||
|
--replace /usr/bin $out/bin \
|
||||||
|
--replace goxlr-launcher goxlr-daemon
|
||||||
|
|
||||||
|
completions_dir=$(dirname $(find target -name 'goxlr-client.bash' | head -n 1))
|
||||||
|
installShellCompletion --bash $completions_dir/goxlr-client.bash
|
||||||
|
installShellCompletion --fish $completions_dir/goxlr-client.fish
|
||||||
|
installShellCompletion --zsh $completions_dir/_goxlr-client
|
||||||
|
completions_dir=$(dirname $(find target -name 'goxlr-daemon.bash' | head -n 1))
|
||||||
|
installShellCompletion --bash $completions_dir/goxlr-daemon.bash
|
||||||
|
installShellCompletion --fish $completions_dir/goxlr-daemon.fish
|
||||||
|
installShellCompletion --zsh $completions_dir/_goxlr-daemon
|
||||||
|
'';
|
||||||
|
|
||||||
|
meta = with lib; {
|
||||||
|
description = "An unofficial GoXLR App replacement for Linux, Windows and MacOS";
|
||||||
|
homepage = "https://github.com/GoXLR-on-Linux/goxlr-utility";
|
||||||
|
license = licenses.mit;
|
||||||
|
maintainers = with maintainers; [ errnoh ];
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -16187,6 +16187,8 @@ with pkgs;
|
|||||||
|
|
||||||
gox = callPackage ../development/tools/gox { };
|
gox = callPackage ../development/tools/gox { };
|
||||||
|
|
||||||
|
goxlr-utility = callPackage ../tools/audio/goxlr-utility {};
|
||||||
|
|
||||||
gprolog = callPackage ../development/compilers/gprolog { };
|
gprolog = callPackage ../development/compilers/gprolog { };
|
||||||
|
|
||||||
gwe = callPackage ../tools/misc/gwe {
|
gwe = callPackage ../tools/misc/gwe {
|
||||||
|
|||||||
Reference in New Issue
Block a user