1{
2 lib,
3 buildGoModule,
4 fetchFromGitHub,
5 makeWrapper,
6 roboto,
7}:
8
9buildGoModule rec {
10 pname = "deckmaster";
11 version = "0.9.0";
12
13 src = fetchFromGitHub {
14 owner = "muesli";
15 repo = "deckmaster";
16 tag = "v${version}";
17 hash = "sha256-1hZ7yAKTvkk20ho+QOqFEtspBvFztAtfmITs2uxhdmQ=";
18 };
19
20 vendorHash = "sha256-DFssAic2YtXNH1Jm6zCDv1yPNz3YUXaFLs7j7rNHhlE=";
21
22 proxyVendor = true;
23
24 nativeBuildInputs = [
25 makeWrapper
26 ];
27
28 ldflags = [
29 "-s"
30 "-w"
31 ];
32
33 # Let the app find Roboto-*.ttf files (hard-coded file names).
34 postFixup = ''
35 wrapProgram $out/bin/deckmaster \
36 --prefix XDG_DATA_DIRS : "${roboto.out}/share/" \
37 '';
38
39 meta = {
40 description = "Application to control your Elgato Stream Deck on Linux";
41 mainProgram = "deckmaster";
42 homepage = "https://github.com/muesli/deckmaster";
43 changelog = "https://github.com/muesli/deckmaster/releases/tag/v${version}";
44 license = lib.licenses.mit;
45 maintainers = with lib.maintainers; [ ];
46 platforms = lib.platforms.linux;
47 };
48}