1{ lib, stdenv, fetchurl, autoPatchelfHook }:
2
3let
4 srcs = {
5 x86_64-linux = fetchurl {
6 urls = [
7 "https://videomap.it/script/dms-ubuntu-x64"
8 "https://archive.org/download/videomap/dms-ubuntu-x64"
9 ];
10 sha256 = "1x7pp6k27lr206a8j2pn0wf4wjb0zi28s0g1g3rb08jmr8fh1jnh";
11 };
12 i686-linux = fetchurl {
13 urls = [
14 "https://videomap.it/script/dms-ubuntu-x32"
15 "https://archive.org/download/videomap/dms-ubuntu-x32"
16 ];
17 sha256 = "1d62d7jz50wzk5rqqm3xab66jdzi9i1j6mwxf7r7nsgm6j5zz8r4";
18 };
19 aarch64-linux = fetchurl {
20 urls = [
21 "https://videomap.it/script/dms-ubuntu-arm64"
22 "https://archive.org/download/videomap/dms-ubuntu-arm64"
23 ];
24 sha256 = "1l1x7iqbxn6zsh3d37yb5x15qsxlwy3cz8g2g8vnzkgaafw9vva0";
25 };
26 armv7l-linux = fetchurl {
27 urls = [
28 "https://videomap.it/script/dms-ubuntu-arm"
29 "https://archive.org/download/videomap/dms-ubuntu-arm"
30 ];
31 sha256 = "1i7q9mylzvbsfydv4xf83nyqkh0nh01612jrqm93q1w6d0k2zvcd";
32 };
33 };
34in
35stdenv.mkDerivation rec {
36 pname = "droidmote";
37 version = "3.0.6";
38
39 src = srcs.${stdenv.hostPlatform.system} or (throw "Unsupported system: ${stdenv.hostPlatform.system}");
40
41 dontUnpack = true;
42 dontBuild = true;
43
44 nativeBuildInputs = [ autoPatchelfHook ];
45
46 installPhase = ''
47 runHook preInstall
48
49 install -m755 -D $src $out/bin/droidmote
50
51 runHook postInstall
52 '';
53
54 meta = with lib; {
55 description = "Control your computer from your couch";
56 homepage = "https://www.videomap.it/";
57 sourceProvenance = with sourceTypes; [ binaryNativeCode ];
58 license = licenses.unfree;
59 maintainers = with maintainers; [ atila ];
60 platforms = lib.attrNames srcs;
61 };
62}