flottbot: init at 0.13.0

Co-authored-by: Muhammad Falak R Wani <falakreyaz@gmail.com>
This commit is contained in:
Bryan Honof 2024-02-20 02:32:34 +01:00
parent 6476f360a4
commit 8fcb45896a
No known key found for this signature in database
2 changed files with 81 additions and 0 deletions

@ -0,0 +1,44 @@
{ lib
, buildGoModule
, fetchFromGitHub
, nix-update-script
, substituteAll
}:
buildGoModule rec {
pname = "flottbot";
version = "0.13.0";
src = fetchFromGitHub {
owner = "target";
repo = "flottbot";
rev = version;
hash = "sha256-ldWE5QcLHyIqap5Qe6OTTIJZ1sshI+CVoJoRUxWHfxM=";
};
patches = [
# patch out debug.ReadBuidlInfo since version information is not available with buildGoModule
(substituteAll {
src = ./version.patch;
version = version;
vcsHash = version; # Maybe there is a way to get the git ref from src? idk.
})
];
vendorHash = "sha256-XRcTp3ZnoPupzI1kjoM4oF5+VlNJFV0Bu+WAwfRWl7g=";
subPackages = [ "cmd/flottbot" ];
passthru = {
updateScript = nix-update-script { };
};
meta = with lib; {
description = "A chatbot framework written in Go";
homepage = "https://github.com/target/flottbot";
license = licenses.asl20;
maintainers = with maintainers; [ bryanhonof ];
sourceProvenance = [ sourceTypes.fromSource ];
mainProgram = "flottbot";
platforms = platforms.unix;
};
}

@ -0,0 +1,37 @@
diff --git a/version/version.go b/version/version.go
index 9ca8aba..d9bd968 100644
--- a/version/version.go
+++ b/version/version.go
@@ -4,9 +4,6 @@ package version
import (
"fmt"
- "runtime/debug"
-
- "github.com/Masterminds/semver/v3"
)
// Version supplies the semantic version.
@@ -14,20 +11,8 @@ var Version string
// String prints the build information for the bot.
func String() string {
- hash := "unknown"
-
- _, err := semver.NewVersion(Version)
- if err != nil {
- Version = "dev"
- }
-
- if info, ok := debug.ReadBuildInfo(); ok {
- for _, s := range info.Settings {
- if s.Key == "vcs.revision" {
- hash = s.Value
- }
- }
- }
+ Version = "@version@"
+ hash := "@vcsHash@"
return fmt.Sprintf("Version : %s\nGit Hash: %s\n", Version, hash)
}