Installation
To install sops
, download one of the pre-built binaries provided for your platform from the artifacts attached to this release.
For instance, if you are using Linux on an AMD64 architecture:
# Download the binary
curl -LO https://github.com/getsops/sops/releases/download/v3.11.0/sops-v3.11.0.linux.amd64
# Move the binary in to your PATH
mv sops-v3.11.0.linux.amd64 /usr/local/bin/sops
# Make the binary executable
chmod +x /usr/local/bin/sops
Verify checksums file signature
The checksums file provided within the artifacts attached to this release is signed using Cosign with GitHub OIDC. To validate the signature of this file, run the following commands:
# Download the checksums file, certificate and signature
curl -LO https://github.com/getsops/sops/releases/download/v3.11.0/sops-v3.11.0.checksums.txt
curl -LO https://github.com/getsops/sops/releases/download/v3.11.0/sops-v3.11.0.checksums.pem
curl -LO https://github.com/getsops/sops/releases/download/v3.11.0/sops-v3.11.0.checksums.sig
# Verify the checksums file
cosign verify-blob sops-v3.11.0.checksums.txt \
--certificate sops-v3.11.0.checksums.pem \
--signature sops-v3.11.0.checksums.sig \
--certificate-identity-regexp=https://github.com/getsops \
--certificate-oidc-issuer=https://token.actions.githubusercontent.com
Verify binary integrity
To verify the integrity of the downloaded binary, you can utilize the checksums file after having validated its signature:
# Verify the binary using the checksums file
sha256sum -c sops-v3.11.0.checksums.txt --ignore-missing
Verify artifact provenance
The SLSA provenance of the binaries, packages, and SBOMs can be found within the artifacts associated with this release. It is presented through an in-toto link metadata file named sops-v3.11.0.intoto.jsonl
. To verify the provenance of an artifact, you can utilize the slsa-verifier
tool:
# Download the metadata file
curl -LO https://github.com/getsops/sops/releases/download/v3.11.0/sops-v3.11.0.intoto.jsonl
# Verify the provenance of the artifact
slsa-verifier verify-artifact <artifact> \
--provenance-path sops-v3.11.0.intoto.jsonl \
--source-uri github.com/getsops/sops \
--source-tag v3.11.0
Container Images
The sops
binaries are also available as container images, based on Debian (slim) and Alpine Linux. The Debian-based container images include any dependencies which may be required to make use of certain key services, such as GnuPG, AWS KMS, Azure Key Vault, and Google Cloud KMS. The Alpine-based container images are smaller in size, but do not include these dependencies.
These container images are available for the following architectures: linux/amd64
and linux/arm64
.
GitHub Container Registry
ghcr.io/getsops/sops:v3.11.0
ghcr.io/getsops/sops:v3.11.0-alpine
Quay.io
quay.io/getsops/sops:v3.11.0
quay.io/getsops/sops:v3.11.0-alpine
Verify container image signature
The container images are signed using Cosign with GitHub OIDC. To validate the signature of an image, run the following command:
cosign verify ghcr.io/getsops/sops:v3.11.0 \
--certificate-identity-regexp=https://github.com/getsops \
--certificate-oidc-issuer=https://token.actions.githubusercontent.com \
-o text
Verify container image provenance
The container images include SLSA provenance attestations. For more information around the verification of this, please refer to the slsa-verifier
documentation.
Software Bill of Materials
The Software Bill of Materials (SBOM) for each binary is accessible within the artifacts enclosed with this release. It is presented as an SPDX JSON file, formatted as <binary>.spdx.sbom.json
.
What's Changed
- build(deps): Bump the go group with 4 updates by @dependabot[bot] in #1845
- build(deps): Bump the go group with 5 updates by @dependabot[bot] in #1850
- build(deps): Bump the ci group with 4 updates by @dependabot[bot] in #1849
- build(deps): Bump the go group with 8 updates by @dependabot[bot] in #1854
- build(deps): Bump tempfile from 3.19.1 to 3.20.0 in /functional-tests in the rust group by @dependabot[bot] in #1853
- build(deps): Bump actions/setup-go from 5.4.0 to 5.5.0 in the ci group by @dependabot[bot] in #1852
- use bullet points for structure by @md42 in #1844
- Introduce EncryptContext and DecryptContext for AWS, Azure, GCP, PGP and HashiCorp Vault by @matheuscscp in #1848
- build(deps): Bump the go group with 5 updates by @dependabot[bot] in #1856
- build(deps): Bump the ci group with 2 updates by @dependabot[bot] in #1857
- Allow injecting custom HTTP client for AWS, Azure, GCP and HashiCorp Vault by @matheuscscp in #1838
- Update authors in main.go by @jvehent in #1860
- build(deps): Bump the go group with 7 updates by @dependabot[bot] in #1861
- Remove unmatched '`' from README.rst by @wasv in #1863
- build(deps): Bump the go group with 4 updates by @dependabot[bot] in #1867
- build(deps): Bump alpine from 3.21 to 3.22 in /.release in the docker group by @dependabot[bot] in #1866
- build(deps): Bump the go group with 12 updates by @dependabot[bot] in #1870
- build(deps): Bump github/codeql-action from 3.28.18 to 3.28.19 in the ci group by @dependabot[bot] in #1869
- build(deps): Bump github.com/cloudflare/circl from 1.6.0 to 1.6.1 by @dependabot[bot] in #1871
- build(deps): Bump the go group with 12 updates by @dependabot[bot] in #1872
- build(deps): Bump the ci group across 1 directory with 3 updates by @dependabot[bot] in #1874
- build(deps): Bump the go group with 8 updates by @dependabot[bot] in #1878
- build(deps): Bump the ci group with 2 updates by @dependabot[bot] in #1879
- build(deps): Bump github.com/go-viper/mapstructure/v2 from 2.2.1 to 2.3.0 by @dependabot[bot] in #1882
- Fix Typo in README.rst by @inverted-tree in #1881
- build(deps): Bump the go group with 4 updates by @dependabot[bot] in #1884
- build(deps): Bump the ci group with 2 updates by @dependabot[bot] in #1883
- Correct Windows path to store keys.txt by @EshemMimi in #1885
- build(deps): Bump the go group with 3 updates by @dependabot[bot] in #1888
- build(deps): Bump the ci group with 2 updates by @dependabot[bot] in #1889
- build(deps): Bump the go group with 6 updates by @dependabot[bot] in #1893
- Add "--value-file" option to "sops set [...]" by @bjornfor in #1876
- Document XDG_CONFIG_HOME support on mac by @fredericrous in #1897
- Fix Shamir threshold encoding for INI and ENV files by @felixfontein in #1899
- build(deps): Bump the go group with 12 updates by @dependabot[bot] in #1908
- build(deps): Bump serde_json from 1.0.140 to 1.0.142 in /functional-tests in the rust group by @dependabot[bot] in #1907
- build(deps): Bump the ci group with 3 updates by @dependabot[bot] in #1905
- Fix docs: mention all stores instead of just YAML, JSON, and BINARY by @felixfontein in #1895
- Ensure temporary file for editing is only read-writable by owner by @felixfontein in #1903
- Add
--value-stdin
option tosops set
by @felixfontein in #1894 - Collect age identity loading errors and only report if decryption failed by @felixfontein in #1898
- add completion script. Resolves #1868 by @longxiucai in #1892
- Resolves #1864. Adds Native List as an option for configuring keys. by @lucqui in #1880
- Fix example.yaml file by @felixfontein in #1909
- build(deps): Bump the go group with 15 updates by @dependabot[bot] in #1912
- build(deps): Bump the ci group with 4 updates by @dependabot[bot] in #1911
- build(deps): Bump the go group with 9 updates by @dependabot[bot] in #1917
- build(deps): Bump the ci group with 4 updates by @dependabot[bot] in #1916
- build(deps): Bump github.com/go-viper/mapstructure/v2 from 2.3.0 to 2.4.0 by @dependabot[bot] in #1920
- build(deps): Bump the go group with 14 updates by @dependabot[bot] in #1923
- build(deps): Bump the rust group in /functional-tests with 2 updates by @dependabot[bot] in #1921
- build(deps): Bump github/codeql-action from 3.29.9 to 3.29.11 in the ci group by @dependabot[bot] in #1922
- Docs: remove paragraph on GPG/PGP keyservers by @felixfontein in #1928
- Allow to configure --enable-local-keyservice and --keyservice through env variables by @felixfontein in #1930
- build(deps): Bump the ci group with 2 updates by @dependabot[bot] in #1937
- fix: correct destination validation logic to detect all conflicts by @bruce-szalwinski-he in #1936
- Switch from deprecated gopkg.in/yaml.v3 to go.yaml.in/yaml/v3 by @sylr in #1934
- INI: fix converting integers to strings; improve float and time.Time formatting by @felixfontein in #1929
- feat(azkv): Skipping key-version will get latest key by @daogilvie in #1919
- Fix keyservice client for unix domain sockets by @matheuscscp in #1910
- README: fix argument order by @felixfontein in #1940
- Allow non-complex non-string values in dotenv and exec-env by @billy4479 in #1933
- Fix mention of macOS XDG_CONFIG_HOME fallback by @felixfontein in #1944
- Improve age identity loading by @felixfontein in #1931
- build(deps): Bump the rust group in /functional-tests with 4 updates by @dependabot[bot] in #1948
- build(deps): Bump the ci group with 2 updates by @dependabot[bot] in #1949
- build(deps): Bump the rust group in /functional-tests with 2 updates by @dependabot[bot] in #1954
- build(deps): Bump anchore/sbom-action from 0.20.5 to 0.20.6 in the ci group by @dependabot[bot] in #1955
- Start documenting the configuration file format by @felixfontein in #1946
- CI: Build with Go 1.24 and 1.25, release with 1.25 by @felixfontein in #1945
- build(deps): Bump the go group across 1 directory with 21 updates by @dependabot[bot] in #1956
- When encrypting, load the config only once by @felixfontein in #1939
- build(deps): Bump the go group across 1 directory with 10 updates by @dependabot[bot] in #1958
- Ignore encryption selection options for binary store (and warn when they are used) by @felixfontein in #1927
- AZKV: Also allow to omit version for AZKV keys specified in key groups by @felixfontein in #1947
- Complex values in dotenv, and exec-env: do not print sensitive value in error message by @felixfontein in #1959
- Release 3.11.0 by @felixfontein in #1960
New Contributors
- @md42 made their first contribution in #1844
- @wasv made their first contribution in #1863
- @inverted-tree made their first contribution in #1881
- @EshemMimi made their first contribution in #1885
- @bjornfor made their first contribution in #1876
- @fredericrous made their first contribution in #1897
- @longxiucai made their first contribution in #1892
- @lucqui made their first contribution in #1880
- @bruce-szalwinski-he made their first contribution in #1936
- @sylr made their first contribution in #1934
- @daogilvie made their first contribution in #1919
- @billy4479 made their first contribution in #1933
Full Changelog: v3.10.2...v3.11.0