diff --git a/README.md b/README.md index c38d7ac..8ec1459 100644 --- a/README.md +++ b/README.md @@ -17,3 +17,8 @@ GRANT ALL PRIVILEGES ON DATABASE wgk TO wgk; ALTER DATABASE wgk OWNER TO wgk; EOF ``` + +To build a release version, go to a tag and run: +``` +go build -ldflags="-X main.Commit=$(git tag)" +``` diff --git a/config/config.go b/config/config.go index 7c5f383..77c7f25 100644 --- a/config/config.go +++ b/config/config.go @@ -12,6 +12,11 @@ type ( MatrixIdentityServer string MatrixMsc3575Address string MatrixWellKnownAddress string + RelayName string + RelayPubkey string + RelayDescription string + RelayIcon string + RelayContact string } ) @@ -23,6 +28,11 @@ func GetConfig() Config { MatrixIdentityServer: getEnv("MATRIX_IDENTITY_SERVER", ""), MatrixMsc3575Address: getEnv("MATRIX_MSC3575_ADDRESS", ""), MatrixWellKnownAddress: getEnv("MATRIX_WELL_KNOWN_ADDRESS", ""), + RelayName: getEnv("RELAY_NAME", ""), + RelayPubkey: getEnv("RELAY_PUBKEY", ""), + RelayDescription: getEnv("RELAY_DESCRIPTION", ""), + RelayIcon: getEnv("RELAY_ICON", ""), + RelayContact: getEnv("RELAY_CONTACT", ""), } } diff --git a/main.go b/main.go index 2edb670..159f4ab 100644 --- a/main.go +++ b/main.go @@ -11,6 +11,10 @@ import ( "github.com/fiatjaf/eventstore/postgresql" ) +var ( + Version string +) + func main() { l := gologger.Get(config.GetConfig().LogLevel).With().Str("context", "main").Logger() db, _ := db.NewDB() @@ -22,7 +26,7 @@ func main() { l.Panic().Msgf("unable to connect to relay db: %s", err.Error()) } - relay := nostr.NewRelay() + relay := nostr.NewRelay(Version) // matrix endpoints l.Debug().Msg("enabling matrix well-known endpoints") diff --git a/nostr/nostr.go b/nostr/nostr.go index 6df21ca..edb1701 100644 --- a/nostr/nostr.go +++ b/nostr/nostr.go @@ -108,15 +108,15 @@ func GetNostrAddr(w http.ResponseWriter, r *http.Request) { return } -func NewRelay() *khatru.Relay { +func NewRelay(version string) *khatru.Relay { // relay configuration relay = khatru.NewRelay() - relay.Info.Name = "Devvul Nostr Relay" - relay.Info.PubKey = "ac7d66c7065e211b27759ffe2b333fde34e307cead79ce7c00f401d8fa6c08d1" - relay.Info.Description = "nostr relay for devvul users" - relay.Info.Icon = "https://pfp.nostr.build/ee442b3c54143099fb483b5e3a6e1e41144df5c7457313a30586a082baa1babc.png" - relay.Info.Version = "0.0.1" - relay.Info.Contact = "asara@devvul.com" + relay.Info.Name = config.GetConfig().RelayName + relay.Info.PubKey = config.GetConfig().RelayPubkey + relay.Info.Description = config.GetConfig().RelayDescription + relay.Info.Icon = config.GetConfig().RelayIcon + relay.Info.Contact = config.GetConfig().RelayContact + relay.Info.Version = version relay.Info.Software = "https://git.devvul.com/asara/well-goknown" // contact lists relay.Info.SupportedNIPs = append(relay.Info.SupportedNIPs, 2) diff --git a/sample.env b/sample.env index 5f0a635..dcbc1b6 100644 --- a/sample.env +++ b/sample.env @@ -1,5 +1,10 @@ +export DATABASE_URL="postgres://user:password@127.0.0.1:5432/db?sslmode=disable" export LISTEN_ADDR=":8090" export LOG_LEVEL=0 -export MATRIX_WELL_KNOWN_ADDRESS=matrix.example.com export MATRIX_MSC3575_ADDRESS=https://matrix.example.com -export DATABASE_URL="postgres://user:password@127.0.0.1:5432/db?sslmode=disable" +export MATRIX_WELL_KNOWN_ADDRESS=matrix.example.com +export RELAY_CONTACT="matrix:u/asara:devvul.com" +export RELAY_DESCRIPTION="nostr relay running via git.devvul.com/asara/well-goknown" +export RELAY_ICON="" +export RELAY_NAME="Nostr Relay" +export RELAY_PUBKEY=""