Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/abemedia/go-winsparkle
Go bindings for WinSparkle
https://github.com/abemedia/go-winsparkle
Last synced: 17 days ago
JSON representation
Go bindings for WinSparkle
- Host: GitHub
- URL: https://github.com/abemedia/go-winsparkle
- Owner: abemedia
- License: other
- Created: 2020-07-29T01:13:58.000Z (over 4 years ago)
- Default Branch: master
- Last Pushed: 2024-06-28T11:10:16.000Z (5 months ago)
- Last Synced: 2024-10-14T12:21:42.834Z (about 1 month ago)
- Language: Go
- Homepage: https://pkg.go.dev/github.com/abemedia/go-winsparkle
- Size: 4.77 MB
- Stars: 9
- Watchers: 2
- Forks: 0
- Open Issues: 5
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# WinSparkle Go Bindings
[![Go Reference](https://pkg.go.dev/badge/github.com/abemedia/go-winsparkle.svg)](https://pkg.go.dev/github.com/abemedia/go-winsparkle)
This package provides go bindings for [WinSparkle](https://github.com/vslavik/winsparkle) created by
Vaclav Slavik.WinSparkle is a plug-and-forget software update library for Windows applications. It is heavily
inspired by the Sparkle framework for OS X written by Andy Matuschak and others, to the point of
sharing the same updates format (appcasts) and having very similar user interface.See for more information about WinSparkle.
## Documentation
See the [WinSparkle wiki](https://github.com/vslavik/winsparkle/wiki) and the
[GoDoc](https://pkg.go.dev/github.com/abemedia/go-winsparkle?tab=doc).## Important
WinSparkle.dll must be placed into the same directory as your app executable. Depending on your
architecture use the version from [dll/x64](./dll/x64/), [dll/x86](./dll/x86/) or
[dll/arm64](./dll/arm64/).Alternatively you can embed the DLL into your application by importing
`github.com/abemedia/go-winsparkle/dll`.## Example
```go
package mainimport (
"github.com/abemedia/go-winsparkle"
_ "github.com/abemedia/go-winsparkle/dll" // Embed DLL.
)func main() {
sparkle.SetAppcastURL("https://dl.example.com/appcast.xml")
sparkle.SetAppDetails("example.com", "My Cool App", "1.0.0")
sparkle.SetAutomaticCheckForUpdates(true)if err := sparkle.SetDSAPubPEM(dsaPublicKey); err != nil {
panic(err)
}// Start your app before initiating WinSparkle.
runMyApp()winsparkle.Init()
defer winsparkle.Cleanup()
}
```