nixos-config/config/workarounds/default.nix

109 lines
3.2 KiB
Nix
Raw Normal View History

2022-03-04 09:54:04 +00:00
{ nixpkgs-soundtouch, system, pkgs, nixpkgs, ... }: with pkgs;
2022-02-28 14:37:43 +00:00
let
2022-03-04 09:54:04 +00:00
rawPerlPackages = callPackage "${nixpkgs}/pkgs/top-level/perl-packages.nix" {
2022-02-28 14:37:43 +00:00
overrides = pkgs: { };
2022-03-04 09:54:04 +00:00
buildPerl = perl;
2022-02-28 14:37:43 +00:00
};
2022-03-04 09:54:04 +00:00
hydra = callPackage "${nixpkgs}/pkgs/development/tools/misc/hydra/common.nix" {
2022-03-02 13:47:38 +00:00
version = "2021-08-11";
2022-03-04 09:54:04 +00:00
src = fetchFromGitHub {
2022-03-02 13:47:38 +00:00
owner = "NixOS";
2022-02-28 14:37:43 +00:00
repo = "hydra";
2022-03-02 13:47:38 +00:00
rev = "9bce425c3304173548d8e822029644bb51d35263";
sha256 = "sha256-tGzwKNW/odtAYcazWA9bPVSmVXMGKfXsqCA1UYaaxmU=";
2022-02-28 14:37:43 +00:00
};
2022-02-28 19:05:56 +00:00
nix = (import nixpkgs-soundtouch { inherit system; }).nixVersions.unstable;
2022-02-28 14:37:43 +00:00
tests = {
2022-03-04 09:54:04 +00:00
basic = nixosTests.hydra.hydra-unstable;
2022-02-28 14:37:43 +00:00
};
};
2022-03-04 10:30:29 +00:00
rtf-tokenize = with python3Packages; buildPythonPackage rec {
pname = "rtf_tokenize";
version = "1.0.0";
src = fetchFromGitHub {
owner = "benoit-pierre";
repo = pname;
rev = version;
sha256 = "1l5pfrggil9knk58r2r84i9msm7mdhddl87hkfk54qqk2sqzc06g";
};
};
plover-stroke = with python3Packages; buildPythonPackage rec {
pname = "plover_stroke";
version = "1.0.1";
src = fetchFromGitHub {
owner = "benoit-pierre";
repo = pname;
rev = version;
sha256 = "15by14gn2grvn7835hcrijfmccy4bqwvbg38rn8fvgyl6n2zhwzn";
};
};
2022-03-04 09:58:00 +00:00
plover = with python3Packages; libsForQt5.mkDerivationWith buildPythonPackage rec {
2022-03-04 09:54:04 +00:00
pname = "plover-wayland";
2022-03-04 09:58:44 +00:00
version = "2022-01-14";
2022-03-04 09:54:04 +00:00
src = fetchFromGitHub {
owner = "matteodelabre";
repo = "plover";
rev = "fd5668a3ad9bd091289dd2e5e8e2c1dec063d51f";
sha256 = "0y3mdfqjv3vmv5c0cpvfa2mqdylan44iw1js480sxvklq8sxq6yv";
};
2022-03-04 10:30:29 +00:00
postPatch = ''
sed -i /PyQt5/d setup.cfg
sed -i 's|/usr/share/wayland|${wayland}/share/wayland|' plover_build_utils/setup.py
sed -i 's|pywayland==|pywayland>=|' reqs/dist.txt
'';
2022-03-04 09:54:04 +00:00
checkInputs = [ pytest mock ];
2022-03-04 10:30:29 +00:00
propagatedBuildInputs = [
Babel
pyqt5
xlib
pyserial
appdirs
wcwidth
setuptools
pywayland
pkg-config
plover-stroke
rtf-tokenize
];
2022-03-04 09:54:04 +00:00
dontWrapQtApps = true;
2022-03-04 10:30:29 +00:00
preBuild = ''
export PKG_CONFIG="${pkg-config}/bin/pkg-config"
'';
2022-03-04 09:54:04 +00:00
preFixup = ''
makeWrapperArgs+=("''${qtWrapperArgs[@]}")
'';
2022-03-04 10:30:29 +00:00
installCheckPhase = "true";
2022-03-04 09:54:04 +00:00
};
2022-02-28 14:37:43 +00:00
in
2022-02-18 13:17:35 +00:00
{
2022-01-27 16:16:42 +00:00
nixpkgs.overlays = [
2022-02-08 07:20:05 +00:00
(self: prev: {
coreutils = prev.coreutils.overrideAttrs (old: {
checkPhase = "true";
});
2022-02-18 13:17:35 +00:00
soundtouch = nixpkgs-soundtouch.legacyPackages.${system}.soundtouch;
2022-02-28 14:37:43 +00:00
hydra-unstable = hydra.overrideAttrs (old: {
patches = [
../../extra/hydra.patch
];
});
2022-03-04 09:54:04 +00:00
plover.dev = plover;
mosh = prev.mosh.overrideAttrs (old: {
patches = [
"${nixpkgs}/pkgs/tools/networking/mosh/ssh_path.patch"
"${nixpkgs}/pkgs/tools/networking/mosh/mosh-client_path.patch"
"${nixpkgs}/pkgs/tools/networking/mosh/utempter_path.patch"
"${nixpkgs}/pkgs/tools/networking/mosh/bash_completion_datadir.patch"
];
version = "2022-02-04";
src = pkgs.fetchFromGitHub {
owner = "mobile-shell";
repo = "mosh";
rev = "dbe419d0e069df3fedc212d456449f64d0280c76";
sha256 = "09mvk9zxclkf4wrkkfzg0p2hx1f74gpymr0a0l3pckmk6za2n3d1";
};
});
2022-02-08 07:20:05 +00:00
})
2022-01-27 16:16:42 +00:00
];
}