summary refs log tree commit diff
path: root/default.nix
blob: 5d9f128208ebb04c48e98895fdffe0bfa61476b1 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
# This file sets up the top-level package set by merging all local packages into
# the nixpkgs top-level.
#
# This makes packages accessible via the Nixery instance that is configured to
# use this repository as its nixpkgs source.

with builtins;

let
  localPkgs = super: pkgs: {
    # Local projects should be added here:
    tazjin = {
      blog = import ./services/tazblog { inherit pkgs; };
      blog_cli = pkgs.callPackage ./tools/blog_cli {};
      gemma = import ./services/gemma { inherit pkgs; };
    };

    # Third-party projects (either vendored or modified from nixpkgs) go here:
    gitAppraise = pkgs.callPackage ./third_party/go/git-appraise/git-appraise {};
    nixery = import ./third_party/nixery.nix { pkgs = super; };
    terraform-gcp = pkgs.terraform_0_12.withPlugins(p: [ p.google ]);
    ormolu = import (super.fetchFromGitHub {
      owner = "tweag";
      repo = "ormolu";
      rev = "a7076c0f83e5c06ea9067b71171859fa2ba8afd9";
      sha256 = "1p4n2ja4ciw3qfskn65ggpy37mvgf2sslxqmqn8s8jjarnqcyfny";
    }) { pkgs = super; };
  };

  # The pinned commit here is identical to the public nixery.dev
  # version, since popularity data has been generated for that.
  nixpkgsVersion = "88d9f776091896cfe57dc6fbdf246e7d27d5f105";
  nixpkgs = "https://github.com/NixOS/nixpkgs-channels/archive/${nixpkgsVersion}.tar.gz";

in { ... } @ args: import (fetchTarball nixpkgs) (args // {
    overlays = [ localPkgs ];
    config.allowUnfree = true;
})