Skip to content

Commit 4aa840d

Browse files
committed
lavalink: init at 4.0.8
1 parent 4c621a3 commit 4aa840d

File tree

1 file changed

+52
-0
lines changed

1 file changed

+52
-0
lines changed
Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,52 @@
1+
{
2+
lib,
3+
stdenv,
4+
makeWrapper,
5+
jdk21,
6+
jdk ? jdk21,
7+
fetchurl,
8+
nixosTests,
9+
}:
10+
11+
stdenv.mkDerivation (finalAttrs: {
12+
pname = "lavalink";
13+
version = "4.0.8";
14+
15+
src = fetchurl {
16+
url = "https://github.com/lavalink-devs/Lavalink/releases/download/${finalAttrs.version}/Lavalink.jar";
17+
hash = "sha256-G4a9ltPq/L0vcazTQjStTlOOtwrBi37bYUNQHy5CV9Y=";
18+
};
19+
20+
nativeBuildInputs = [
21+
makeWrapper
22+
];
23+
24+
dontUnpack = true;
25+
26+
installPhase = ''
27+
runHook preInstall
28+
29+
makeWrapper ${lib.getExe jdk} $out/bin/lavalink \
30+
--add-flags "-jar $src"
31+
32+
runHook postInstall
33+
'';
34+
35+
passthru.tests = { inherit (nixosTests) lavalink; };
36+
37+
meta = {
38+
description = "Standalone audio sending node based on Lavaplayer and Koe";
39+
longDescription = ''
40+
A standalone audio sending node based on Lavaplayer and Koe. Allows for sending audio without it ever reaching any of your shards.
41+
42+
Being used in production by FredBoat, Dyno, LewdBot, and more.
43+
'';
44+
homepage = "https://lavalink.dev/";
45+
changelog = "https://github.com/lavalink-devs/Lavalink/releases/tag/${finalAttrs.version}";
46+
license = lib.licenses.mit;
47+
maintainers = with lib.maintainers; [ nanoyaki ];
48+
sourceProvenance = [ lib.sourceTypes.binaryBytecode ];
49+
mainProgram = "lavalink";
50+
inherit (jdk.meta) platforms;
51+
};
52+
})

0 commit comments

Comments
 (0)