This package provides a UEFI library written to interact with Linux efivars. The goal is to provide a Go library to enable application authors to better utilize secure boot and UEFI. This also includes unit-testing to ensure the library is compatible with existing tools, and integration tests to ensure the library is able of deal with future UEFI revisions.
This package provides provides an utility for timezone manipulation, implementing the following features:
this library uses only the standard package
supports getting offset from timezone abbreviation, which is not supported by the time package
determine whether the specified time.Time is daylight saving time
change the location of time.Time by specifying the timezone
ChunkReader is a io.Reader
wrapper that minimizes IO reads and memory allocations. It allocates memory in chunks and will read as much as will fit in the current buffer in a single call regardless of how large a read is actually requested. The memory returned via Next is owned by the caller. This avoids the need for an additional copy. It extracted from original implementation in https://github.com/jackc/pgx.
This package produces a collection of cryptographic utilities, including the following:
drbg
: a cryptographically secure pseudorandom number generator as specified in NIST SP 800-90Aencoding/base32
: a compact base32 encodersecretkey
: user-friendly secret keys that can be used with secretboxsalsa20
: a streaming interface (cipher.Stream) for the Salsa20 stream cipherpoly1305
: a streaming interface (hash.Hash) for the Poly1305 one-time authenticator as specified in poly1305
This is a Go library for detecting the user's home directory without the use of cgo
, so the library can be used in cross-compilation environments.
Usage is simple, just call homedir.Dir() to get the home directory for a user, and homedir.Expand() to expand the ~
in a path to the home directory.
Why not just use os/user
? The built-in os/user
package requires cgo on Darwin systems. This means that any Go code that uses that package cannot cross compile. But 99% of the time the use for os/user
is just to retrieve the home directory, which we can do for the current user without cgo. This library does that, enabling cross-compilation.
This repository factors out an opinionated selection of internal packages and functionality from the Go standard library. Currently this consists mostly of packages and testing code from within the Go tool implementation.
Included are the following:
dirhash: calculate hashes over directory trees the same way that the Go tool does.
goproxytest: a GOPROXY implementation designed for test use.
gotooltest: Use the Go tool inside test scripts (see testscript below)
imports: list of known architectures and OSs, and support for reading import import statements.
modfile: read and write go.mod files while preserving formatting and comments.
module: module paths and versions.
par: do work in parallel.
semver: semantic version parsing.
testenv: information on the current testing environment.
testscript: script-based testing based on txtar files
txtar: simple text-based file archives for testing.
A .gitignore
parser for Go.
Java properties scanner for Go
This package provides a hashing function.
Converts markdown into roff (man pages).
Converts markdown into roff (man pages).
Converts markdown into roff (man pages).
This package provides HTTP header constants.
This package provides memcache client and server functionality.
This package can generate ASCII line graphs in Golang.
Colorstring provides functions for colorizing strings for terminal output.
Package arrow provides an implementation of Apache Arrow.
Package colorstring provides functions for colorizing strings for terminal output.
This package converts Markdown into Roff Man pages.
Go library provides utilities for building command line interfaces.
This package is a simple Golang implementation of tag parser.
PKI based identities for use in go-libp2p
.
This package provides an IDLE extension for go-imap.