syncthing: fix build (#51866)
###### Motivation for this change fixes #51825 ###### Things done <!-- Please check what applies. Note that these are not hard requirements but merely serve as information for reviewers. --> - [x] Tested using sandboxing ([nix.useSandbox](http://nixos.org/nixos/manual/options.html#opt-nix.useSandbox) on NixOS, or option `sandbox` in [`nix.conf`](http://nixos.org/nix/manual/#sec-conf-file) on non-NixOS) - Built on platform(s) - [x] NixOS - [ ] macOS - [ ] other Linux distributions - [ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside [nixos/tests](https://github.com/NixOS/nixpkgs/blob/master/nixos/tests)) - [ ] Tested compilation of all pkgs that depend on this change using `nix-shell -p nox --run "nox-review wip"` - [ ] Tested execution of all binary files (usually in `./result/bin/`) - [ ] Determined the impact on package closure size (by running `nix path-info -S` before and after) - [ ] Assured whether relevant documentation is up to date - [x] Fits [CONTRIBUTING.md](https://github.com/NixOS/nixpkgs/blob/master/.github/CONTRIBUTING.md). ---
This commit is contained in:
parent
c89cbdcd48
commit
643fabf8ea
|
@ -1,8 +1,8 @@
|
||||||
{ stdenv, lib, go, procps, removeReferencesTo, fetchFromGitHub }:
|
{ buildGoPackage, fetchpatch, stdenv, lib, procps, fetchFromGitHub }:
|
||||||
|
|
||||||
let
|
let
|
||||||
common = { stname, target, patches ? [], postInstall ? "" }:
|
common = { stname, target, postInstall ? "" }:
|
||||||
stdenv.mkDerivation rec {
|
buildGoPackage rec {
|
||||||
version = "0.14.52";
|
version = "0.14.52";
|
||||||
name = "${stname}-${version}";
|
name = "${stname}-${version}";
|
||||||
|
|
||||||
|
@ -13,29 +13,36 @@ let
|
||||||
sha256 = "1qzzbqfyjqlgzysyf6dr0xsm3gn35irmllxjjd94v169swvkk5kd";
|
sha256 = "1qzzbqfyjqlgzysyf6dr0xsm3gn35irmllxjjd94v169swvkk5kd";
|
||||||
};
|
};
|
||||||
|
|
||||||
inherit patches;
|
goPackagePath = "github.com/syncthing/syncthing";
|
||||||
|
|
||||||
buildInputs = [ go ];
|
patches = [
|
||||||
nativeBuildInputs = [ removeReferencesTo ];
|
./add-stcli-target.patch
|
||||||
|
(fetchpatch {
|
||||||
|
url = "https://github.com/syncthing/syncthing/commit/e7072feeb7669948c3e43f55d21aec15481c33ba.patch";
|
||||||
|
sha256 = "1pcybww2vdx45zhd1sd53v7fp40vfgkwqgy8flv7hxw2paq8hxd4";
|
||||||
|
})
|
||||||
|
];
|
||||||
|
BUILD_USER="nix";
|
||||||
|
BUILD_HOST="nix";
|
||||||
|
|
||||||
buildPhase = ''
|
buildPhase = ''
|
||||||
# Syncthing expects that it is checked out in $GOPATH, if that variable is
|
runHook preBuild
|
||||||
# set. Since this isn't true when we're fetching source, we can explicitly
|
pushd go/src/${goPackagePath}
|
||||||
# unset it and force Syncthing to set up a temporary one for us.
|
go run build.go -no-upgrade -version v${version} build ${target}
|
||||||
env GOPATH= BUILD_USER=nix BUILD_HOST=nix go run build.go -no-upgrade -version v${version} build ${target}
|
popd
|
||||||
|
runHook postBuild
|
||||||
'';
|
'';
|
||||||
|
|
||||||
installPhase = ''
|
installPhase = ''
|
||||||
install -Dm755 ${target} $out/bin/${target}
|
pushd go/src/${goPackagePath}
|
||||||
|
runHook preInstall
|
||||||
|
install -Dm755 ${target} $bin/bin/${target}
|
||||||
runHook postInstall
|
runHook postInstall
|
||||||
|
popd
|
||||||
'';
|
'';
|
||||||
|
|
||||||
inherit postInstall;
|
inherit postInstall;
|
||||||
|
|
||||||
preFixup = ''
|
|
||||||
find $out/bin -type f -exec remove-references-to -t ${go} '{}' '+'
|
|
||||||
'';
|
|
||||||
|
|
||||||
meta = with lib; {
|
meta = with lib; {
|
||||||
homepage = https://www.syncthing.net/;
|
homepage = https://www.syncthing.net/;
|
||||||
description = "Open Source Continuous File Synchronization";
|
description = "Open Source Continuous File Synchronization";
|
||||||
|
@ -79,7 +86,6 @@ in {
|
||||||
syncthing-cli = common {
|
syncthing-cli = common {
|
||||||
stname = "syncthing-cli";
|
stname = "syncthing-cli";
|
||||||
|
|
||||||
patches = [ ./add-stcli-target.patch ];
|
|
||||||
target = "stcli";
|
target = "stcli";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue