Bunkum.Protocols.Gemini
4.5.2
See the version list below for details.
dotnet add package Bunkum.Protocols.Gemini --version 4.5.2
NuGet\Install-Package Bunkum.Protocols.Gemini -Version 4.5.2
<PackageReference Include="Bunkum.Protocols.Gemini" Version="4.5.2" />
paket add Bunkum.Protocols.Gemini --version 4.5.2
#r "nuget: Bunkum.Protocols.Gemini, 4.5.2"
// Install Bunkum.Protocols.Gemini as a Cake Addin #addin nuget:?package=Bunkum.Protocols.Gemini&version=4.5.2 // Install Bunkum.Protocols.Gemini as a Cake Tool #tool nuget:?package=Bunkum.Protocols.Gemini&version=4.5.2
Bunkum.Protocols.Gemini
Gemini protocol support for Bunkum
Usage
using Bunkum.Core;
using Bunkum.Protocols.Gemini;
BunkumServer server = new BunkumGeminiServer(null, new LoggerConfiguration
{
Behaviour = new QueueLoggingBehaviour(),
#if DEBUG
MaxLevel = LogLevel.Trace,
#else
MaxLevel = LogLevel.Info,
#endif
});
server.Initialize = s =>
{
s.DiscoverEndpointsFromAssembly(Assembly.GetExecutingAssembly());
};
server.Start();
await Task.Delay(-1);
Generating an SSL/TLS certificate
Gemini does not support unencrypted transport by design. To test locally, you must create a certificate. Bunkum cannot create one for you, but common tools like OpenSSL can do this for you.
Linux
First, create a private key/certificate pair. Change "localhost" to your FQDN if you'd like to use a self-signed certificate externally.
openssl req -x509 -newkey rsa:4096 -keyout key.pem -out cert.pem -days 365 -nodes -subj "/CN=localhost"
Then, convert your pair to a .pfx file that Bunkum can use:
openssl pkcs12 -export -out cert.pfx -inkey key.pem -in cert.pem
Hopefully, you should now have a file named cert.pfx
that Bunkum can use.
Windows
TODO
Configuration
The BunkumGeminiServer
allows a SSL configuration in the constructor.
If one is not provided, it will default to creating a json config named geminissl.json
instead:
{
"Version": 1,
"SslCertificate": "cert.pfx",
"CertificatePassword": "password here or null"
}
Version
refers to the configuration schema version, do not modify this.
SslCertificate
points to the path of your certificate.
CertificatePassword
can either be the password as a string or simply null
in the case of no password.
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. |
-
net8.0
- Bunkum (>= 4.5.2)
- Bunkum.Listener (>= 4.5.2)
NuGet packages (1)
Showing the top 1 NuGet packages that depend on Bunkum.Protocols.Gemini:
Package | Downloads |
---|---|
Bunkum.Serialization.GopherToGemini
Allows serialization of Gophermaps in Gemini for Bunkum servers |
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last updated |
---|---|---|
4.8.1 | 94 | 7/30/2024 |
4.8.0 | 77 | 7/30/2024 |
4.7.1 | 98 | 7/28/2024 |
4.7.0 | 110 | 7/17/2024 |
4.6.0 | 106 | 7/11/2024 |
4.5.6 | 128 | 6/14/2024 |
4.5.5 | 130 | 5/23/2024 |
4.5.4 | 114 | 5/13/2024 |
4.5.3 | 109 | 5/13/2024 |
4.5.2 | 139 | 5/7/2024 |
4.5.1 | 115 | 4/30/2024 |
4.5.0 | 129 | 4/24/2024 |
4.4.5 | 149 | 2/19/2024 |
4.4.4 | 151 | 2/5/2024 |
4.4.3 | 231 | 12/4/2023 |
4.4.2 | 154 | 12/3/2023 |
4.4.1 | 156 | 11/26/2023 |
4.4.0 | 149 | 11/25/2023 |
4.3.3 | 189 | 10/28/2023 |
4.3.2 | 152 | 10/27/2023 |
4.3.1 | 168 | 10/22/2023 |
4.3.0 | 162 | 10/22/2023 |