nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1{ lib, fetchFromGitHub }:
2let
3 version = "3.13.0";
4 vendorHash = "sha256-EkOg1D+zeEbVBPr4fpCPI31CvMnTD7FZ2hhQW7UzN8A=";
5 nodeModulesHash = "sha256-wORM+24nE771llb1Q7bn6iDtlJpm3kOqO3wTLUQmjyQ=";
6in
7{
8 inherit version vendorHash nodeModulesHash;
9
10 src = fetchFromGitHub {
11 owner = "woodpecker-ci";
12 repo = "woodpecker";
13 tag = "v${version}";
14 hash = "sha256-EeND2L5l37fo3JBlFORR4m0tXQWlJ2qqIXIdQ1vJdgM=";
15 };
16
17 postInstall = ''
18 cd $out/bin
19 for f in *; do
20 if [ "$f" = cli ]; then
21 # Issue a warning to the user if they call the deprecated executable
22 cat >woodpecker << EOF
23 #!/bin/sh
24 echo 'WARNING: calling \`woodpecker\` is deprecated, use \`woodpecker-cli\` instead.' >&2
25 $out/bin/woodpecker-cli "\$@"
26 EOF
27 chmod +x woodpecker
28 patchShebangs woodpecker
29 fi
30 mv -- "$f" "woodpecker-$f"
31 done
32 cd -
33 '';
34
35 ldflags = [
36 "-s"
37 "-w"
38 "-X go.woodpecker-ci.org/woodpecker/v3/version.Version=${version}"
39 ];
40
41 meta = {
42 homepage = "https://woodpecker-ci.org/";
43 changelog = "https://github.com/woodpecker-ci/woodpecker/blob/v${version}/CHANGELOG.md";
44 license = lib.licenses.asl20;
45 maintainers = with lib.maintainers; [
46 ambroisie
47 marcusramberg
48 techknowlogick
49 ];
50 };
51}