This builds git-bug, a distributed issue tracker that uses git as its data store. It also installs its man pages and shell completions. It is recommended that users add git-bug to their system closure for these extras to work, as they will not be picked up by the dispatch script. Change-Id: I1595368e61b0bae8a9497abd023085cb90a521a6 Reviewed-on: https://cl.tvl.fyi/c/depot/+/345 Reviewed-by: lukegb <lukegb@tvl.fyi>
		
			
				
	
	
		
			182 lines
		
	
	
	
		
			3.7 KiB
		
	
	
	
		
			Nix
		
	
	
	
	
	
			
		
		
	
	
			182 lines
		
	
	
	
		
			3.7 KiB
		
	
	
	
		
			Nix
		
	
	
	
	
	
| # This file controls the import of external dependencies (i.e.
 | |
| # third-party code) into my package tree.
 | |
| #
 | |
| # This includes *all packages needed from nixpkgs*.
 | |
| { ... }:
 | |
| 
 | |
| let
 | |
|   # Tracking nixos-unstable as of 2020-06-10.
 | |
|   nixpkgsCommit = "467ce5a9f45aaf96110b41eb863a56866e1c2c3c";
 | |
|   nixpkgsSrc = fetchTarball {
 | |
|     url = "https://github.com/NixOS/nixpkgs-channels/archive/${nixpkgsCommit}.tar.gz";
 | |
|     sha256 = "0qz7wgi61pdb335n18xm8rfwddckwv0vg8n7fii5abrrx47vnqcj";
 | |
|   };
 | |
|   nixpkgs = import nixpkgsSrc {
 | |
|     config.allowUnfree = true;
 | |
|     config.allowBroken = true;
 | |
|   };
 | |
| 
 | |
|   # Tracking nixos-20.03 as of 2020-05-22
 | |
|   stableCommit = "48723f48ab92381f0afd50143f38e45cf3080405";
 | |
|   stableNixpkgsSrc = fetchTarball {
 | |
|     url = "https://github.com/NixOS/nixpkgs-channels/archive/${stableCommit}.tar.gz";
 | |
|     sha256 = "0h3b3l867j3ybdgimfn76lw7w6yjhszd5x02pq5827l659ihcf53";
 | |
|   };
 | |
|   stableNixpkgs = import stableNixpkgsSrc {};
 | |
| 
 | |
|   exposed = {
 | |
|     # Inherit the packages from nixos-unstable that should be available inside
 | |
|     # of the repo. They become available under `pkgs.third_party.<name>`
 | |
|     inherit (nixpkgs)
 | |
|       age
 | |
|       autoconf
 | |
|       autoreconfHook
 | |
|       bashInteractive
 | |
|       bat
 | |
|       buildBazelPackage
 | |
|       buildFHSUserEnv
 | |
|       buildGoModule
 | |
|       buildGoPackage
 | |
|       buildPackages
 | |
|       bzip2
 | |
|       c-ares
 | |
|       cacert
 | |
|       cachix
 | |
|       cairo
 | |
|       cargo
 | |
|       cgit
 | |
|       clang-tools
 | |
|       clang_10
 | |
|       cmake
 | |
|       coreutils
 | |
|       cudatoolkit
 | |
|       darwin
 | |
|       dockerTools
 | |
|       fetchFromGitHub
 | |
|       fetchgit
 | |
|       fetchurl
 | |
|       fetchzip
 | |
|       fira
 | |
|       fira-code
 | |
|       fira-mono
 | |
|       fontconfig
 | |
|       freetype
 | |
|       gettext
 | |
|       glibc
 | |
|       gmock
 | |
|       gnutar
 | |
|       go
 | |
|       google-cloud-sdk
 | |
|       graphviz
 | |
|       gzip
 | |
|       haskell
 | |
|       iana-etc
 | |
|       imagemagickBig
 | |
|       installShellFiles
 | |
|       jdk
 | |
|       jetbrains-mono
 | |
|       jq
 | |
|       kontemplate
 | |
|       lib
 | |
|       libredirect
 | |
|       luajit
 | |
|       luatex
 | |
|       makeFontsConf
 | |
|       makeWrapper
 | |
|       mdbook
 | |
|       meson
 | |
|       mime-types
 | |
|       moreutils
 | |
|       nano
 | |
|       nginx
 | |
|       ninja
 | |
|       nix
 | |
|       openssh
 | |
|       openssl
 | |
|       overrideCC
 | |
|       pandoc
 | |
|       parallel
 | |
|       pkgconfig
 | |
|       pounce
 | |
|       python3
 | |
|       python3Packages
 | |
|       remarshal
 | |
|       rink
 | |
|       ripgrep
 | |
|       rsync
 | |
|       runCommand
 | |
|       runCommandNoCC
 | |
|       rustPlatform
 | |
|       rustc
 | |
|       sbcl
 | |
|       sqlite
 | |
|       stern
 | |
|       symlinkJoin
 | |
|       systemd
 | |
|       tdlib
 | |
|       terraform_0_12
 | |
|       texlive
 | |
|       thttpd
 | |
|       tree
 | |
|       which
 | |
|       writeShellScript
 | |
|       writeShellScriptBin
 | |
|       writeText
 | |
|       writeTextFile
 | |
|       xorg
 | |
|       xz
 | |
|       zlib
 | |
|       zstd;
 | |
| 
 | |
|     # Inherit packages that should come from a stable channel
 | |
|     inherit (stableNixpkgs)
 | |
|       emacs26
 | |
|       emacs26-nox
 | |
|       emacsPackages
 | |
|       emacsPackagesGen;
 | |
| 
 | |
|     # Required by //third_party/nix
 | |
|     inherit (nixpkgs)
 | |
|       aws-sdk-cpp
 | |
|       bison
 | |
|       boehmgc
 | |
|       boost # urgh
 | |
|       brotli
 | |
|       busybox-sandbox-shell
 | |
|       curl
 | |
|       docbook5
 | |
|       docbook_xsl_ns
 | |
|       editline
 | |
|       flex
 | |
|       libseccomp
 | |
|       libsodium
 | |
|       libxml2
 | |
|       libxslt
 | |
|       mercurial
 | |
|       perl
 | |
|       perlPackages
 | |
|       utillinuxMinimal;
 | |
|   };
 | |
| 
 | |
| in exposed.lib.fix(self: exposed // {
 | |
|   callPackage = nixpkgs.lib.callPackageWith self;
 | |
| 
 | |
|   # Provide the source code of nixpkgs, but do not provide an imported
 | |
|   # version of it.
 | |
|   inherit nixpkgsCommit nixpkgsSrc stableNixpkgsSrc;
 | |
| 
 | |
|   # Packages to be overridden
 | |
|   originals = {
 | |
|     inherit (nixpkgs) grpc notmuch;
 | |
|     inherit (stableNixpkgs) git;
 | |
|     ffmpeg = nixpkgs.ffmpeg-full;
 | |
|   };
 | |
| 
 | |
|   # Use LLVM 10
 | |
|   llvmPackages = nixpkgs.llvmPackages_10;
 | |
|   clangStdenv = nixpkgs.llvmPackages_10.stdenv;
 | |
|   stdenv = nixpkgs.llvmPackages_10.stdenv;
 | |
| 
 | |
|   # Make NixOS available
 | |
|   nixos = import "${nixpkgsSrc}/nixos";
 | |
| })
 |