See how a minor change to your commit message style can make you a better programmer.
Format: <type>(<scope>): <subject>
<scope> is optional
In your command-line run the following commands:
brew doctorbrew update| extension Result { | |
| public func `catch`(_ handler: () throws -> Success) -> Result<Success, Error> { | |
| flatMapError { _ in | |
| .init { try handler() } | |
| } | |
| } | |
| public func `catch`(_ handler: (Failure) throws -> Success) -> Result<Success, Error> { | |
| flatMapError { error in | |
| .init { try handler(error) } |
I’ve written a newer optimized 2026 version of this guide with a faster setup using Zinit + Starship and improved plugin loading.
This version avoids slow shell startups and works better with modern Zsh setups.
Updated guide: https://gist.github.com/n1snt/2cccc8aa5f7b645a7628d3512c70deb6
| FROM golang:1.23.0-bookworm AS build | |
| ARG upx_version=4.2.4 | |
| RUN apt-get update && apt-get install -y --no-install-recommends xz-utils && \ | |
| curl -Ls https://github.com/upx/upx/releases/download/v${upx_version}/upx-${upx_version}-amd64_linux.tar.xz -o - | tar xvJf - -C /tmp && \ | |
| cp /tmp/upx-${upx_version}-amd64_linux/upx /usr/local/bin/ && \ | |
| chmod +x /usr/local/bin/upx && \ | |
| apt-get remove -y xz-utils && \ | |
| rm -rf /var/lib/apt/lists/* |