Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
1{ 2 lib, 3 rustPlatform, 4 fetchFromGitHub, 5 pkg-config, 6 vimUtils, 7 stdenv, 8 nix-update-script, 9}: 10let 11 version = "0.3.0"; 12 13 src = fetchFromGitHub { 14 owner = "Saghen"; 15 repo = "blink.pairs"; 16 tag = "v${version}"; 17 hash = "sha256-RTY/uGviyHlO+ZmLwOC5BabKr+kRDAXGZNdS9fVRPWA="; 18 }; 19 20 blink-pairs-lib = rustPlatform.buildRustPackage { 21 pname = "blink-pairs"; 22 inherit version src; 23 24 cargoHash = "sha256-j+zk0UMjvaVgsdF5iaRVO4Puf/XtGu08Cs92jKPaM1g="; 25 26 env.RUSTC_BOOTSTRAP = 1; 27 28 nativeBuildInputs = [ 29 pkg-config 30 ]; 31 }; 32in 33vimUtils.buildVimPlugin { 34 pname = "blink.pairs"; 35 inherit version src; 36 37 preInstall = 38 let 39 ext = stdenv.hostPlatform.extensions.sharedLibrary; 40 in 41 '' 42 mkdir -p target/release 43 ln -s ${blink-pairs-lib}/lib/libblink_pairs${ext} target/release/ 44 ''; 45 46 passthru = { 47 updateScript = nix-update-script { 48 attrPath = "vimPlugins.blink-pairs.blink-pairs-lib"; 49 }; 50 51 # needed for the update script 52 inherit blink-pairs-lib; 53 }; 54 55 meta = { 56 description = "Rainbow highlighting and intelligent auto-pairs for Neovim"; 57 homepage = "https://github.com/Saghen/blink.pairs"; 58 changelog = "https://github.com/Saghen/blink.pairs/blob/${src.tag}/CHANGELOG.md"; 59 license = lib.licenses.mit; 60 maintainers = with lib.maintainers; [ isabelroses ]; 61 }; 62}