add post about hashicorp license change

change markdown engine
This commit is contained in:
Pim Kunis 2023-08-17 20:33:38 +02:00
parent f6773e3685
commit 9291d43f4c
7 changed files with 61 additions and 5 deletions

View file

@ -22,6 +22,7 @@ group :jekyll_plugins do
gem 'jekyll-sitemap', '~> 1.4' gem 'jekyll-sitemap', '~> 1.4'
gem 'jekyll-compose', '~> 0.12.0' gem 'jekyll-compose', '~> 0.12.0'
gem 'jekyll-postfiles', '~> 3.1' gem 'jekyll-postfiles', '~> 3.1'
gem 'jekyll-commonmark-ghpages'
end end
# Windows does not include zoneinfo files, so bundle the tzinfo-data gem # Windows does not include zoneinfo files, so bundle the tzinfo-data gem

View file

@ -4,6 +4,8 @@ GEM
addressable (2.8.1) addressable (2.8.1)
public_suffix (>= 2.0.2, < 6.0) public_suffix (>= 2.0.2, < 6.0)
colorator (1.1.0) colorator (1.1.0)
commonmarker (0.17.13)
ruby-enum (~> 0.5)
concurrent-ruby (1.2.0) concurrent-ruby (1.2.0)
em-websocket (0.5.3) em-websocket (0.5.3)
eventmachine (>= 0.12.9) eventmachine (>= 0.12.9)
@ -29,6 +31,13 @@ GEM
rouge (~> 3.0) rouge (~> 3.0)
safe_yaml (~> 1.0) safe_yaml (~> 1.0)
terminal-table (~> 1.8) terminal-table (~> 1.8)
jekyll-commonmark (1.3.1)
commonmarker (~> 0.14)
jekyll (>= 3.7, < 5.0)
jekyll-commonmark-ghpages (0.1.6)
commonmarker (~> 0.17.6)
jekyll-commonmark (~> 1.2)
rouge (>= 2.0, < 4.0)
jekyll-compose (0.12.0) jekyll-compose (0.12.0)
jekyll (>= 3.7, < 5.0) jekyll (>= 3.7, < 5.0)
jekyll-feed (0.17.0) jekyll-feed (0.17.0)
@ -58,6 +67,8 @@ GEM
ffi (~> 1.0) ffi (~> 1.0)
rexml (3.2.5) rexml (3.2.5)
rouge (3.30.0) rouge (3.30.0)
ruby-enum (0.9.0)
i18n
safe_yaml (1.0.5) safe_yaml (1.0.5)
sassc (2.4.0) sassc (2.4.0)
ffi (~> 1.9) ffi (~> 1.9)
@ -71,6 +82,7 @@ PLATFORMS
DEPENDENCIES DEPENDENCIES
jekyll (~> 4.1.0) jekyll (~> 4.1.0)
jekyll-commonmark-ghpages
jekyll-compose (~> 0.12.0) jekyll-compose (~> 0.12.0)
jekyll-feed (~> 0.13) jekyll-feed (~> 0.13)
jekyll-postfiles (~> 3.1) jekyll-postfiles (~> 3.1)

View file

@ -20,7 +20,7 @@ collections:
posts: posts:
output: true output: true
markdown: kramdown markdown: CommonMarkGhPages
highlighter: rouge highlighter: rouge
kramdown: kramdown:
syntax_highlighter: rouge syntax_highlighter: rouge
@ -69,3 +69,8 @@ plugins:
- jekyll-feed - jekyll-feed
- jekyll-sitemap - jekyll-sitemap
- jekyll-postfiles - jekyll-postfiles
- jekyll-commonmark-ghpages
commonmark:
options: ["SMART", "FOOTNOTES"]
extensions: ["strikethrough", "autolink", "table", "tagfilter"]

View file

@ -22,7 +22,7 @@ The problem is that `Mem.used` and `Mem.free` do not accurately reflect the mach
This is because these metrics include caches and buffers, which can be reclaimed by other processes if needed. This is because these metrics include caches and buffers, which can be reclaimed by other processes if needed.
Most tools reporting memory usage therefore include an additional metric that specifices the memory _available_ on the system. Most tools reporting memory usage therefore include an additional metric that specifices the memory _available_ on the system.
For example, the command `free -m` reports the following data on my laptop: For example, the command `free -m` reports the following data on my laptop:
``` ```text
total used free shared buff/cache available total used free shared buff/cache available
Mem: 15864 3728 7334 518 5647 12136 Mem: 15864 3728 7334 518 5647 12136
Swap: 2383 663 1720 Swap: 2383 663 1720

View file

@ -0,0 +1,38 @@
---
layout: post
title: Hashicorp's License Change and my Home Lab
date: 2023-08-17 18:15:00 Europe/Amsterdam
categories: hashicorp terraform vault nomad
---
Already a week ago, Hashicorp [announced](https://www.hashicorp.com/blog/hashicorp-adopts-business-source-license) it would change the license on almost all its projects.
Unlike [their previous license](https://github.com/hashicorp/terraform/commit/ab411a1952f5b28e6c4bd73071194761da36a83f), which was the Mozilla Public License 2.0, their new license is no longer truly open source.
It is called the Business Source License™ and restricts use of their software for competitors.
In their own words:
> Vendors who provide competitive services built on our community products will no longer be able to incorporate future releases, bug fixes, or security patches contributed to our products.
I found [a great article](https://meshedinsights.com/2021/02/02/rights-ratchet/) by MeshedInsights that names this behaviour the "rights ratchet model".
They define a script start-ups use to garner the interest of open source enthusiasts but eventually turn their back on them for profit.
The reason why Hashicorp can do this, is because contributors signed a copyright license agreement (CLA).
This agreement transfers the copyright of contributors' code to Hashicorp, allowing them to change the license if they want to.
I find this action really regrettable because I like their products.
This sort of action was also why I wanted to avoid using an Elastic stack, which also had their [license changed](https://www.elastic.co/pricing/faq/licensing).[^elastic]
These companies do not respect their contributors and the software stack beneath they built their product on, which is actually open source (Golang, Linux, etc.).
# Impact on my Home Lab
I am using Terraform in my home lab to manage several important things:
- Libvirt virtual machines
- PowerDNS records
- Elasticsearch configuration
With Hashicorp's anti open source move, I intend to move away from Terraform in the future.
While I will not use Hashicorp's products for new personal projects, I will leave my current setup as-is for some time because there is no real need to quickly migrate.
I might also investigate some of Terraform's competitors, like Pulumi.
Hopefully there is a project that respects open source which I can use in the future.
# Footnotes
[^elastic]: While I am still using Elasticsearch, I don't use the rest of the Elastic stack in order to prevent a vendor lock-in.

View file

@ -6,14 +6,14 @@ categories: ssh terraform ansible
--- ---
Ever SSH'ed into a freshly installed server and gotten the following annoying message? Ever SSH'ed into a freshly installed server and gotten the following annoying message?
``` ```text
The authenticity of host 'host.tld (1.2.3.4)' can't be established. The authenticity of host 'host.tld (1.2.3.4)' can't be established.
ED25519 key fingerprint is SHA256:eUXGdm1YdsMAS7vkdx6dOJdOGHdem5gQp4tadCfdLB8. ED25519 key fingerprint is SHA256:eUXGdm1YdsMAS7vkdx6dOJdOGHdem5gQp4tadCfdLB8.
Are you sure you want to continue connecting (yes/no)? Are you sure you want to continue connecting (yes/no)?
``` ```
Or even more annoying: Or even more annoying:
``` ```text
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @ @ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@

View file

@ -30,7 +30,7 @@ Under the hood, virtio-9p uses the 9pnet protocol.
Originally developed at Bell Labs, support for this is available in all modern Linux kernels. Originally developed at Bell Labs, support for this is available in all modern Linux kernels.
If you share a directory with a VM, you can then mount it. If you share a directory with a VM, you can then mount it.
Below is an extract of my `/etc/fstab` to automatically mount the directory: Below is an extract of my `/etc/fstab` to automatically mount the directory:
``` ```text
data /mnt/data 9p trans=virtio,rw 0 0 data /mnt/data 9p trans=virtio,rw 0 0
``` ```