depot/third_party/nixpkgs/pkgs/by-name/mi/mixxc/package.nix
Default email 5c370c0b2a Project import generated by Copybara.
GitOrigin-RevId: 33d1e753c82ffc557b4a585c77de43d4c922ebb5
2024-05-15 17:35:15 +02:00

67 lines
1.3 KiB
Nix

{
lib,
rustPlatform,
fetchCrate,
pkg-config,
libpulseaudio,
gtk4-layer-shell,
gtk4,
wrapGAppsHook4,
libxcb,
installShellFiles,
enableWayland ? true,
enableSass ? true,
enableX11 ? true,
}:
rustPlatform.buildRustPackage rec {
pname = "mixxc";
version = "0.2.2";
src = fetchCrate {
pname = "mixxc";
inherit version;
hash = "sha256-Y/9l8t6Vz7yq9T1AyoHnWmIcju1rfcV0S74hiK1fEjo=";
};
cargoHash = "sha256-l9inqqUiLObrqd/8pNobwBbLaiPJD39YK/38CWfDh+Q=";
cargoBuildFlags = [ "--locked" ];
buildFeatures = [
(lib.optionals enableWayland "Wayland")
(lib.optionals enableX11 "X11")
(lib.optionals enableSass "Sass")
];
nativeBuildInputs = [
pkg-config
installShellFiles
wrapGAppsHook4
];
buildInputs = [
libpulseaudio
gtk4
(lib.optionals enableWayland gtk4-layer-shell)
(lib.optionals enableX11 libxcb)
];
outputs = [
"out"
"man"
];
postInstall = ''
installManPage $src/doc/mixxc.1
'';
meta = {
description = "A minimalistic and customizable volume mixer";
homepage = "https://github.com/Elvyria/mixxc";
license = with lib.licenses; [ mit ];
maintainers = with lib.maintainers; [ daru-san ];
mainProgram = "mixxc";
platforms = lib.platforms.linux;
};
}