diff options
Diffstat (limited to 'nixpkgs/pkgs/servers/caddy/xcaddy')
3 files changed, 65 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/servers/caddy/xcaddy/default.nix b/nixpkgs/pkgs/servers/caddy/xcaddy/default.nix new file mode 100644 index 000000000000..930b3db4327b --- /dev/null +++ b/nixpkgs/pkgs/servers/caddy/xcaddy/default.nix @@ -0,0 +1,36 @@ +{ lib, buildGoModule, fetchFromGitHub }: + +buildGoModule rec { + pname = "xcaddy"; + version = "0.3.5"; + + subPackages = [ "cmd/xcaddy" ]; + + src = fetchFromGitHub { + owner = "caddyserver"; + repo = pname; + rev = "v${version}"; + hash = "sha256-XxklyOaKFPyWFabodNCcV1NnaPWS0AQ2Sj89ZZ5hJbk="; + }; + + patches = [ + ./inject_version_info.diff + ./use_tmpdir_on_darwin.diff + ]; + + ldflags = [ + "-s" + "-w" + "-X github.com/caddyserver/xcaddy/cmd.customVersion=v${version}" + ]; + + vendorHash = "sha256-RpbnoXyTrqGOI7DpgkO+J47P17T4QCVvM1CfS6kRO9Y="; + + meta = with lib; { + homepage = "https://github.com/caddyserver/xcaddy"; + description = "Build Caddy with plugins"; + mainProgram = "xcaddy"; + license = licenses.asl20; + maintainers = with maintainers; [ tjni emilylange ]; + }; +} diff --git a/nixpkgs/pkgs/servers/caddy/xcaddy/inject_version_info.diff b/nixpkgs/pkgs/servers/caddy/xcaddy/inject_version_info.diff new file mode 100644 index 000000000000..4d87aa687878 --- /dev/null +++ b/nixpkgs/pkgs/servers/caddy/xcaddy/inject_version_info.diff @@ -0,0 +1,16 @@ +diff --git a/cmd/main.go b/cmd/main.go +index ede7cd8..c553140 100644 +--- a/cmd/main.go ++++ b/cmd/main.go +@@ -401,8 +401,11 @@ func splitWith(arg string) (module, version, replace string, err error) { + return + } + ++var customVersion string ++ + // xcaddyVersion returns a detailed version string, if available. + func xcaddyVersion() string { ++ return customVersion + mod := goModule() + ver := mod.Version + if mod.Sum != "" { diff --git a/nixpkgs/pkgs/servers/caddy/xcaddy/use_tmpdir_on_darwin.diff b/nixpkgs/pkgs/servers/caddy/xcaddy/use_tmpdir_on_darwin.diff new file mode 100644 index 000000000000..064d8feb5a05 --- /dev/null +++ b/nixpkgs/pkgs/servers/caddy/xcaddy/use_tmpdir_on_darwin.diff @@ -0,0 +1,13 @@ +diff --git a/builder.go b/builder.go +index ed6c5ef..36e8055 100644 +--- a/builder.go ++++ b/builder.go +@@ -200,7 +200,7 @@ func NewReplace(old, new string) Replace { + // It is the caller's responsibility to remove the folder when finished. + func newTempFolder() (string, error) { + var parentDir string +- if runtime.GOOS == "darwin" { ++ if false && runtime.GOOS == "darwin" { + // After upgrading to macOS High Sierra, Caddy builds mysteriously + // started missing the embedded version information that -ldflags + // was supposed to produce. But it only happened on macOS after |