···11+self: super: rec {
22+ my-universal-ctags = super.universal-ctags.overrideAttrs (old: rec {
33+ version = "6.1.0";
44+ src = super.fetchFromGitHub {
55+ owner = "universal-ctags";
66+ repo = "ctags";
77+ rev = "v${version}";
88+ sha256 = "sha256-f8+Ifjn7bhSYozOy7kn+zCLdHGrH3iFupHUZEGynz9Y=";
99+ };
1010+ # disable checks, else we get `make[1]: *** No rule to make target 'optlib/cmake.c'. Stop.`
1111+ doCheck = false;
1212+ checkFlags = [ ];
1313+ });
1414+1515+ # Skip building if same ctags version as registry
1616+ universal-ctags = if super.universal-ctags.version == my-universal-ctags.version then super.universal-ctags else my-universal-ctags;
1717+}
+2-17
flake.nix
···1616 overlays = [ self.overlays.ctags ];
1717 };
1818 in { default = import ./shell.nix { inherit pkgs; }; });
1919- # Pin a specific version of universal-ctags to the same version as in cmd/symbols/ctags-install-alpine.sh.
2020- overlays.ctags = self: super: rec {
2121- my-universal-ctags = super.universal-ctags.overrideAttrs (old: rec {
2222- version = "6.1.0";
2323- src = super.fetchFromGitHub {
2424- owner = "universal-ctags";
2525- repo = "ctags";
2626- rev = "v${version}";
2727- sha256 = "sha256-f8+Ifjn7bhSYozOy7kn+zCLdHGrH3iFupHUZEGynz9Y=";
2828- };
2929- # disable checks, else we get `make[1]: *** No rule to make target 'optlib/cmake.c'. Stop.`
3030- doCheck = false;
3131- checkFlags = [ ];
3232- });
3333- # Skip building if same ctags version as registry
3434- universal-ctags = if super.universal-ctags.version == my-universal-ctags.version then super.universal-ctags else my-universal-ctags;
3535- };
1919+ # Pin a specific version of universal-ctags to the same version as in ./install-ctags-alpine.sh.
2020+ overlays.ctags = import ./ctag-overlay.nix;
3621 };
3722}
+5-1
shell.nix
···11-{ pkgs }:
11+{ pkgs ? import <nixpkgs> {
22+ overlays = [
33+ (import ./ctag-overlay.nix)
44+ ];
55+}}:
26let
37 # pkgs.universal-ctags installs the binary as "ctags", not "universal-ctags"
48 # like zoekt expects.