add input-leap
This commit is contained in:
parent
9ce692cb5f
commit
a4e239898c
2 changed files with 65 additions and 1 deletions
57
custom/input-leap/default.nix
Normal file
57
custom/input-leap/default.nix
Normal file
|
|
@ -0,0 +1,57 @@
|
|||
{ lib, fetchFromGitHub, cmake, curl, xorg, avahi, stdenv, pkgs,
|
||||
openssl, wrapGAppsHook,
|
||||
avahiWithLibdnssdCompat ? avahi.override { withLibdnssdCompat = true; },
|
||||
fetchpatch
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "barrier";
|
||||
version = "2.4.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "input-leap";
|
||||
repo = "input-leap";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-2tHqLF3zS3C4UnOVIZfpcuzaemC9++nC7lXgFnFSfKU=";
|
||||
fetchSubmodules = true;
|
||||
};
|
||||
|
||||
patches = [
|
||||
# This patch can be removed when a new version of barrier (greater than 2.4.0)
|
||||
# is released, which will contain this commit.
|
||||
(fetchpatch {
|
||||
name = "add-missing-cstddef-header.patch";
|
||||
url = "https://github.com/debauchee/barrier/commit/4b12265ae5d324b942698a3177e1d8b1749414d7.patch";
|
||||
sha256 = "sha256-ajMxP7szBFi4h8cMT3qswfa3k/QiJ1FGI3q9fkCFQQk=";
|
||||
})
|
||||
];
|
||||
|
||||
buildInputs = [ curl xorg.libX11 xorg.libXext xorg.libXtst avahiWithLibdnssdCompat pkgs.libsForQt5.qt5.qtbase ];
|
||||
nativeBuildInputs = [ cmake wrapGAppsHook pkgs.libsForQt5.qt5.wrapQtAppsHook ];
|
||||
|
||||
postFixup = ''
|
||||
substituteInPlace "$out/share/applications/barrier.desktop" --replace "Exec=barrier" "Exec=$out/bin/barrier"
|
||||
'';
|
||||
|
||||
qtWrapperArgs = [
|
||||
''--prefix PATH : ${lib.makeBinPath [ openssl ]}''
|
||||
];
|
||||
|
||||
meta = {
|
||||
description = "Open-source KVM software";
|
||||
longDescription = ''
|
||||
Input Leap is software that mimics the functionality of a KVM switch,
|
||||
which historically would allow you to use a single keyboard and mouse
|
||||
to control multiple computers by physically turning a dial on the box
|
||||
to switch the machine you're controlling at any given moment. Input
|
||||
Leap does this in software, allowing you to tell it which machine to
|
||||
control by moving your mouse to the edge of the screen, or by using a
|
||||
keypress to switch focus to a different system.
|
||||
'';
|
||||
homepage = "https://github.com/input-leap/input-leap";
|
||||
downloadPage = "https://github.com/input-leap/input-leap/releases";
|
||||
license = lib.licenses.gpl2;
|
||||
maintainers = [ lib.maintainers.phryneas ];
|
||||
platforms = lib.platforms.linux;
|
||||
};
|
||||
}
|
||||
|
|
@ -20,6 +20,7 @@ let
|
|||
gawk = "${pkgs.gawk}/bin/awk";
|
||||
};
|
||||
lf-sixel = pkgs.callPackage ../../custom/lf-sixel/. { };
|
||||
input-leap = pkgs.callPackage ../../custom/input-leap/. { };
|
||||
in
|
||||
{
|
||||
programs.home-manager.enable = true;
|
||||
|
|
@ -38,10 +39,12 @@ in
|
|||
imv
|
||||
libsixel
|
||||
lf-sixel
|
||||
input-leap
|
||||
yt-dlp
|
||||
playerctl
|
||||
swww
|
||||
neofetch
|
||||
obs-studio
|
||||
|
||||
inkscape
|
||||
libsForQt5.okular
|
||||
|
|
@ -519,7 +522,7 @@ in
|
|||
};
|
||||
}
|
||||
{
|
||||
name = "typescript";
|
||||
name = "tsx";
|
||||
auto-format = true;
|
||||
language-server = {
|
||||
command = "${pkgs.nodePackages.typescript-language-server}/bin/typescript-language-server";
|
||||
|
|
@ -867,6 +870,10 @@ color body red default "([a-z][a-z0-9+-]*://(((([a-z0-9_.!~*'();:&=+$,-]|%[0-9a-
|
|||
command = "${pkgs.rnix-lsp}/bin/rnix-lsp";
|
||||
filetypes = [ "nix" ];
|
||||
};
|
||||
typescript = {
|
||||
command = "${pkgs.nodePackages.typescript-language-server}/bin/typescript-language-server";
|
||||
filetypes = [ "ts" "tsx" ];
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue