File: shell.nix

package info (click to toggle)
incus 6.0.5-6
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 25,788 kB
  • sloc: sh: 16,313; ansic: 3,121; python: 457; makefile: 337; ruby: 51; sql: 50; lisp: 6
file content (52 lines) | stat: -rw-r--r-- 981 bytes parent folder | download | duplicates (6)
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
39
40
41
42
43
44
45
46
47
48
49
50
51
52
let
  pkgs = import <nixpkgs> { inherit overlays; };
  _xgettext-go =
    { buildGoModule
    , fetchFromGitHub
    , gettext
    }: buildGoModule rec {
      pname = "xgettext-go";
      version = "2.57.1";

      src = fetchFromGitHub {
        owner = "canonical";
        repo = "snapd";
        rev = version;
        hash = "sha256-icPEvK8jHuJO38q1n4sabWvdgt9tB5b5Lh5/QYjRBBQ=";
      };

      vendorHash = "sha256-e1QFZIleBVyNB0iPecfrPOg829EYD7d3KMHIrOYnA74=";
      subPackages = [
        "i18n/xgettext-go"
      ];
    };
  overlays = [
    (final: prev: {
      xgettext-go = final.callPackage _xgettext-go { };
    })
  ];

in
pkgs.mkShell {
  packages = with pkgs; [
    # dev environment
    go
    golangci-lint
    gopls

    # static-analysis
    codespell
    debianutils
    go-licenses
    go-swagger
    gettext
    shellcheck
    xgettext-go
    (python3.withPackages (pyPkgs: with pyPkgs; [
      flake8
    ]))
  ];
  inputsFrom = [
    pkgs.incus
  ];
}