File tree Expand file tree Collapse file tree 1 file changed +108
-0
lines changed
Expand file tree Collapse file tree 1 file changed +108
-0
lines changed Original file line number Diff line number Diff line change 1+ {
2+ lib ,
3+ stdenv ,
4+ fetchFromGitHub ,
5+ cmake ,
6+ ninja ,
7+ pkg-config ,
8+ tomlplusplus ,
9+ cli11 ,
10+ gtest ,
11+ libei ,
12+ libportal ,
13+ libX11 ,
14+ libxkbfile ,
15+ libXtst ,
16+ libXinerama ,
17+ libXi ,
18+ libXrandr ,
19+ libxkbcommon ,
20+ pugixml ,
21+ python3 ,
22+ gdk-pixbuf ,
23+ libnotify ,
24+ qt6 ,
25+ xkeyboard_config ,
26+ openssl ,
27+ wayland-protocols ,
28+ wayland ,
29+ libsysprof-capture ,
30+ lerc ,
31+ doxygen ,
32+ } :
33+ stdenv . mkDerivation rec {
34+ pname = "deskflow" ;
35+ version = "1.17.1" ;
36+
37+ src = fetchFromGitHub {
38+ owner = "deskflow" ;
39+ repo = "deskflow" ;
40+ rev = "v${ version } " ;
41+ hash = "sha256-cEKG9MwENbZqrfRdwiZtRWmIfRndrWUoaZQ5O7YRpBs=" ;
42+ } ;
43+
44+ postPatch = ''
45+ substituteInPlace src/lib/deskflow/unix/AppUtilUnix.cpp \
46+ --replace-fail "/usr/share/X11/xkb/rules/evdev.xml" "${ xkeyboard_config } /share/X11/xkb/rules/evdev.xml"
47+ substituteInPlace src/lib/gui/tls/TlsCertificate.cpp \
48+ --replace-fail "\"openssl\"" "\"${ lib . getBin openssl } /bin/openssl\""
49+ '' ;
50+
51+ nativeBuildInputs = [
52+ cmake
53+ ninja
54+ pkg-config
55+ qt6 . wrapQtAppsHook
56+ doxygen # docs
57+ ] ;
58+
59+ cmakeFlags = [
60+ "-DCMAKE_SKIP_RPATH=ON" # Avoid generating incorrect RPATH
61+ ] ;
62+
63+ strictDeps = true ;
64+
65+ buildInputs = [
66+ tomlplusplus
67+ cli11
68+ gtest
69+ libei
70+ libportal
71+ libX11
72+ libxkbfile
73+ libXinerama
74+ libXi
75+ libXrandr
76+ libXtst
77+ libxkbcommon
78+ pugixml
79+ gdk-pixbuf
80+ libnotify
81+ python3
82+ qt6 . qtbase
83+ wayland-protocols
84+ qt6 . qtwayland
85+ wayland
86+ libsysprof-capture
87+ lerc
88+ ] ;
89+
90+ postInstall = ''
91+ substituteInPlace $out/share/applications/deskflow.desktop \
92+ --replace-fail "Path=/usr/bin" "Path=$out/bin" \
93+ --replace-fail "Exec=/usr/bin/deskflow" "Exec=deskflow"
94+ '' ;
95+
96+ qtWrapperArgs = [
97+ "--set QT_QPA_PLATFORM_PLUGIN_PATH ${ qt6 . qtwayland } /${ qt6 . qtbase . qtPluginPrefix } /platforms"
98+ ] ;
99+
100+ meta = {
101+ homepage = "https://github.com/deskflow/deskflow" ;
102+ description = "Share one mouse and keyboard between multiple computers on Windows, macOS and Linux" ;
103+ mainProgram = "deskflow" ;
104+ maintainers = with lib . maintainers ; [ aucub ] ;
105+ license = lib . licenses . gpl2Plus ;
106+ platforms = lib . platforms . linux ;
107+ } ;
108+ }
You can’t perform that action at this time.
0 commit comments