# homebrew

Published articles for homebrew.

This is one page of public article previews, not the complete archive. Follow Next page to continue. Summaries are not the original full articles.

## Set Up a Python Project with uv

DevFeed: [Set Up a Python Project with uv](<https://devfeed.tech/articles/uv-all-the-way-your-go-to-python-environment-manager-28614.md>)

Original publisher: [Read original article](<https://www.marvelousmlops.io/p/uv-all-the-way-your-go-to-python>)

Author: Boldizsár

Published: 2025-11-10T07:28:01Z

Content type: tutorial

Language: en

Sources: [MarvelousMLOps](<https://devfeed.tech/sources/marvelousmlops.md>)

Topics: [Tutorial](<https://devfeed.tech/topics/tutorial.md>), [Python](<https://devfeed.tech/topics/python.md>)

Tags: [2025](<https://devfeed.tech/tags/2025.md>), [command-line](<https://devfeed.tech/tags/command-line.md>), [environment](<https://devfeed.tech/tags/environment.md>), [homebrew](<https://devfeed.tech/tags/homebrew.md>), [install](<https://devfeed.tech/tags/install.md>), [linux](<https://devfeed.tech/tags/linux.md>), [macos](<https://devfeed.tech/tags/macos.md>), [python](<https://devfeed.tech/tags/python.md>), [terminal](<https://devfeed.tech/tags/terminal.md>), [tutorial](<https://devfeed.tech/tags/tutorial.md>), [windows](<https://devfeed.tech/tags/windows.md>)

### AI overview

A tutorial for setting up a modern Python project with uv. It covers installing uv on macOS, Linux, and Windows, creating a project, reviewing its files, and creating and synchronizing a project-specific virtual environment and dependencies.

### Source excerpt

In 2025 the best way to manage Python projects is using uv. This tutorial helps you set up a modern Python project from scratch using uv.

## How to Set Up Manim for Math Animation on macOS in 2025

DevFeed: [How to Set Up Manim for Math Animation on macOS in 2025](<https://devfeed.tech/articles/manim-29000.md>)

Original publisher: [Read original article](<https://nshipster.com/manim/>)

Author: Mattt (mattt@nshipster.com)

Published: 2025-10-01T07:00:00Z

Content type: tutorial

Language: en

Sources: [NSHipster](<https://devfeed.tech/sources/nshipster.md>)

Topics: [Graphics](<https://devfeed.tech/topics/graphics.md>), [Python](<https://devfeed.tech/topics/python.md>), [Development](<https://devfeed.tech/topics/development.md>), [Open Source](<https://devfeed.tech/topics/open-source.md>), [macOS](<https://devfeed.tech/topics/macos.md>), [Homebrew](<https://devfeed.tech/topics/homebrew.md>), [LaTeX](<https://devfeed.tech/topics/latex.md>), [Docker](<https://devfeed.tech/topics/docker.md>)

Tags: [animation](<https://devfeed.tech/tags/animation.md>), [docker](<https://devfeed.tech/tags/docker.md>), [graphics](<https://devfeed.tech/tags/graphics.md>), [guide](<https://devfeed.tech/tags/guide.md>), [homebrew](<https://devfeed.tech/tags/homebrew.md>), [how-to](<https://devfeed.tech/tags/how-to.md>), [macos](<https://devfeed.tech/tags/macos.md>), [miscellaneous](<https://devfeed.tech/tags/miscellaneous.md>), [open-source](<https://devfeed.tech/tags/open-source.md>), [python](<https://devfeed.tech/tags/python.md>)

### AI overview

A practical guide to setting up Manim, the open-source math animation library used by 3Blue1Brown, on macOS in 2025. It covers Homebrew, Mise, uv, Python dependencies, Cairo, Pycairo, and LaTeX, with Docker discussed as an alternative.

### Source excerpt

This year for Halloween, NSHipster is dressing up as 3blue1brown. And thanks to his open-source math animation library, we're totally pulling it off.

## Building GoReleaser: from shell script to paid product

DevFeed: [Building GoReleaser: from shell script to paid product](<https://devfeed.tech/articles/building-goreleaser-from-shell-script-to-paid-product-37684.md>)

Original publisher: [Read original article](<https://carlosbecker.com/posts/building-goreleaser/>)

Author: Carlos Alexandro Becker

Published: 2025-07-19T00:00:00Z

Content type: article

Language: en

Sources: [Carlos Becker](<https://devfeed.tech/sources/carlos-becker.md>)

Topics: [Automation](<https://devfeed.tech/topics/automation.md>), [Go Language](<https://devfeed.tech/topics/go-language.md>), [YAML](<https://devfeed.tech/topics/yaml.md>), [GitHub](<https://devfeed.tech/topics/github.md>), [Open Source](<https://devfeed.tech/topics/open-source.md>), [Homebrew](<https://devfeed.tech/topics/homebrew.md>), [API](<https://devfeed.tech/topics/api.md>)

Tags: [api](<https://devfeed.tech/tags/api.md>), [automation](<https://devfeed.tech/tags/automation.md>), [binaries](<https://devfeed.tech/tags/binaries.md>), [building](<https://devfeed.tech/tags/building.md>), [github](<https://devfeed.tech/tags/github.md>), [go](<https://devfeed.tech/tags/go.md>), [homebrew](<https://devfeed.tech/tags/homebrew.md>), [open-source](<https://devfeed.tech/tags/open-source.md>), [shell-script](<https://devfeed.tech/tags/shell-script.md>)

### AI overview

The article recounts the history of GoReleaser, a YAML-configured release automation tool that builds binaries, creates archives and packages, publishes releases, pushes installers, and signs artifacts. It describes the tool's evolution from a shell script into a Go project and its early adoption by open-source developers.

### Source excerpt

In this post, I want to share the history behind GoReleaser, how we got here, lessons I've learned along the way, and what's ahead.

## Moving on from Nix

DevFeed: [Moving on from Nix](<https://devfeed.tech/articles/moving-on-from-nix-37685.md>)

Original publisher: [Read original article](<https://carlosbecker.com/posts/bye-nix/>)

Author: Carlos Alexandro Becker

Published: 2025-06-17T00:00:00Z

Content type: opinion

Language: en

Sources: [Carlos Becker](<https://devfeed.tech/sources/carlos-becker.md>)

Topics: [Nix](<https://devfeed.tech/topics/nix.md>), [dotfiles](<https://devfeed.tech/topics/dotfiles.md>), [configuration](<https://devfeed.tech/topics/configuration.md>), [Homebrew](<https://devfeed.tech/topics/homebrew.md>)

Tags: [configuration](<https://devfeed.tech/tags/configuration.md>), [homebrew](<https://devfeed.tech/tags/homebrew.md>), [nix](<https://devfeed.tech/tags/nix.md>), [packages](<https://devfeed.tech/tags/packages.md>), [plugins](<https://devfeed.tech/tags/plugins.md>)

### AI overview

A developer explains why, after using Nix in dotfiles for more than two years, they are moving away from it. They cite Nix's broad control over files and tools, outdated packages, instability, and slow application of configuration changes, while continuing to use Homebrew for some desktop applications.

### Source excerpt

After using nix in my dotfiles for over 2 years, I'm now moving away from it. Here's why.

## Deploying a Simple Go/Gin Application on Heroku

DevFeed: [Deploying a Simple Go/Gin Application on Heroku](<https://devfeed.tech/articles/deploying-a-simple-go-gin-application-on-heroku-26395.md>)

Original publisher: [Read original article](<https://www.heroku.com/blog/deploying-simple-go-gin-application-on-heroku/>)

Author: Ken W. Alger

Published: 2025-05-22T15:00:28Z

Content type: tutorial

Language: en

Sources: [Heroku](<https://devfeed.tech/sources/heroku.md>)

Topics: [Go Language](<https://devfeed.tech/topics/go-language.md>), [Gin](<https://devfeed.tech/topics/gin.md>), [Heroku](<https://devfeed.tech/topics/heroku.md>), [Deployment](<https://devfeed.tech/topics/deployment.md>), [Back end](<https://devfeed.tech/topics/backend.md>), [Framework](<https://devfeed.tech/topics/framework.md>), [web applications](<https://devfeed.tech/topics/web-applications.md>), [GitHub](<https://devfeed.tech/topics/github.md>), [Homebrew](<https://devfeed.tech/topics/homebrew.md>)

Tags: [apis](<https://devfeed.tech/tags/apis.md>), [backend-development](<https://devfeed.tech/tags/backend-development.md>), [cloud-infrastructure](<https://devfeed.tech/tags/cloud-infrastructure.md>), [deployment](<https://devfeed.tech/tags/deployment.md>), [development](<https://devfeed.tech/tags/development.md>), [engineering](<https://devfeed.tech/tags/engineering.md>), [examples](<https://devfeed.tech/tags/examples.md>), [framework](<https://devfeed.tech/tags/framework.md>), [github](<https://devfeed.tech/tags/github.md>), [go](<https://devfeed.tech/tags/go.md>), [go-programming](<https://devfeed.tech/tags/go-programming.md>), [guide](<https://devfeed.tech/tags/guide.md>), [heroku](<https://devfeed.tech/tags/heroku.md>), [homebrew](<https://devfeed.tech/tags/homebrew.md>), [linux](<https://devfeed.tech/tags/linux.md>), [macos](<https://devfeed.tech/tags/macos.md>), [product-features](<https://devfeed.tech/tags/product-features.md>)

### AI overview

This tutorial explains how to build and deploy a Go web application using the Gin framework on Heroku. It covers setting up a local development environment, initializing a Go module, preparing the application for deployment, and addressing configuration, dependency, and troubleshooting concerns.

### Source excerpt

The speed and efficiency of the Go programming language make it popular for backend development. Combine Go with the Gin framework--which offers a fast and minimalistic approach to building web applications--and developers can easily create high-performance APIs and web services. Whether you're working on a personal project or building a production-ready application, Go and Gin [...] The post Deploying a Simple Go/Gin Application on Heroku appeared first on Heroku.

## Run Large Language Models Locally on a Mac with Ollama

DevFeed: [Run Large Language Models Locally on a Mac with Ollama](<https://devfeed.tech/articles/ollama-29002.md>)

Original publisher: [Read original article](<https://nshipster.com/ollama/>)

Author: Mattt (mattt@nshipster.com)

Published: 2025-02-14T08:00:00Z

Content type: tutorial

Language: en

Sources: [NSHipster](<https://devfeed.tech/sources/nshipster.md>)

Topics: [Ollama](<https://devfeed.tech/topics/ollama.md>), [Large Language Model](<https://devfeed.tech/topics/llm.md>), [llama.cpp](<https://devfeed.tech/topics/llama-cpp.md>), [llama3](<https://devfeed.tech/topics/llama3.md>), [Containers](<https://devfeed.tech/topics/containers.md>), [Homebrew](<https://devfeed.tech/topics/homebrew.md>)

Tags: [artificial-intelligence](<https://devfeed.tech/tags/artificial-intelligence.md>), [containers](<https://devfeed.tech/tags/containers.md>), [homebrew](<https://devfeed.tech/tags/homebrew.md>), [inference](<https://devfeed.tech/tags/inference.md>), [latency](<https://devfeed.tech/tags/latency.md>), [llama-cpp](<https://devfeed.tech/tags/llama-cpp.md>), [llama3](<https://devfeed.tech/tags/llama3.md>), [llms](<https://devfeed.tech/tags/llms.md>), [miscellaneous](<https://devfeed.tech/tags/miscellaneous.md>), [oci](<https://devfeed.tech/tags/oci.md>), [ollama](<https://devfeed.tech/tags/ollama.md>)

### AI overview

This tutorial explains how to use Ollama to download, run, and manage large language models locally on a Mac. It covers installation, llama3.2, llama.cpp, Modelfiles, OCI-based model distribution, and the practical benefits of local inference, including privacy, cost, latency, control, and reliability.

### Source excerpt

While we wait for Apple Intelligence to arrive on our devices, something remarkable is already running on our Macs. Think of it as a locavore approach to artificial intelligence: homegrown, sustainable, and available year-round.

## Navigating Databricks developer tools

DevFeed: [Navigating Databricks developer tools](<https://devfeed.tech/articles/navigating-databricks-developer-tools-28609.md>)

Original publisher: [Read original article](<https://www.marvelousmlops.io/p/navigating-databricks-developer-tools>)

Author: Maria Vechtomova

Published: 2025-02-01T14:00:18Z

Content type: tutorial

Language: en

Sources: [MarvelousMLOps](<https://devfeed.tech/sources/marvelousmlops.md>)

Topics: [databricks](<https://devfeed.tech/topics/databricks.md>), [Tooling](<https://devfeed.tech/topics/tooling.md>), [Command-line interface](<https://devfeed.tech/topics/cli.md>), [VS Code Extension](<https://devfeed.tech/topics/vscode-extension.md>), [Python](<https://devfeed.tech/topics/python.md>), [Security](<https://devfeed.tech/topics/security.md>)

Tags: [cli](<https://devfeed.tech/tags/cli.md>), [databricks](<https://devfeed.tech/tags/databricks.md>), [developer-tools](<https://devfeed.tech/tags/developer-tools.md>), [homebrew](<https://devfeed.tech/tags/homebrew.md>), [python](<https://devfeed.tech/tags/python.md>), [security](<https://devfeed.tech/tags/security.md>), [vs-code](<https://devfeed.tech/tags/vs-code.md>)

### AI overview

This tutorial examines Databricks developer tools for working outside the Databricks environment, focusing on the Databricks CLI, Databricks Connect, and the Databricks VS Code Extension. It discusses installation, authentication, configuration evaluation order, local execution of Spark code, deployment, and development and debugging considerations.

### Source excerpt

Developing on Databricks outside of Databricks environment is challenging, and there are 4 main developer tools Databricks provides:

## Ideal iOS KMP Setup - Kevin Galligan

DevFeed: [Ideal iOS KMP Setup - Kevin Galligan](<https://devfeed.tech/articles/ideal-ios-kmp-setup-kevin-galligan-38222.md>)

Original publisher: [Read original article](<https://touchlab.co/ideal-ios-kmp-setup>)

Published: 2024-05-18T00:00:00Z

Content type: tutorial

Language: en

Sources: [Touchlab | Enterprise Mobile Innovation & Development](<https://devfeed.tech/sources/touchlab-enterprise-mobile-innovation-development.md>)

Topics: [iOS development](<https://devfeed.tech/topics/ios-development.md>), [Development](<https://devfeed.tech/topics/development.md>), [Xcode](<https://devfeed.tech/topics/xcode.md>), [Tooling](<https://devfeed.tech/topics/tooling.md>), [Developer experience](<https://devfeed.tech/topics/developer-experience.md>), [Kotlin](<https://devfeed.tech/topics/kotlin.md>), [openjdk](<https://devfeed.tech/topics/openjdk.md>), [SDK](<https://devfeed.tech/topics/sdk.md>), [configuration](<https://devfeed.tech/topics/configuration.md>), [Homebrew](<https://devfeed.tech/topics/homebrew.md>), [debugging](<https://devfeed.tech/topics/debugging.md>), [Open Source](<https://devfeed.tech/topics/open-source.md>)

Tags: [configuration](<https://devfeed.tech/tags/configuration.md>), [debugging](<https://devfeed.tech/tags/debugging.md>), [developer-tools](<https://devfeed.tech/tags/developer-tools.md>), [gradle](<https://devfeed.tech/tags/gradle.md>), [homebrew](<https://devfeed.tech/tags/homebrew.md>), [installation](<https://devfeed.tech/tags/installation.md>), [ios-development](<https://devfeed.tech/tags/ios-development.md>), [java](<https://devfeed.tech/tags/java.md>), [kotlin](<https://devfeed.tech/tags/kotlin.md>), [open-source](<https://devfeed.tech/tags/open-source.md>), [openjdk](<https://devfeed.tech/tags/openjdk.md>), [security](<https://devfeed.tech/tags/security.md>)

### AI overview

A practical guide to setting up an iOS development environment for Kotlin Multiplatform (KMP), covering JVM installation and management, Xcode version management, and Touchlab's Kotlin Xcode Plugin for Kotlin-aware debugging.

### Source excerpt

To maximize your iOS developer experience with KMP, you'll want to install the best tools available and configure them appropriately. There are many options available, but this is Touchlab's preferred iOS development setup.

## Nix Weekly Recap: 2024-05-05

DevFeed: [Nix Weekly Recap: 2024-05-05](<https://devfeed.tech/articles/nix-weekly-recap-2024-05-05-34717.md>)

Original publisher: [Read original article](<https://nixpkgs.news/archive/2024-05-05/>)

Published: 2024-05-05T00:00:00Z

Content type: article

Language: en

Sources: [nixpkgs.news](<https://devfeed.tech/sources/nixpkgs-news.md>)

Topics: [Nix](<https://devfeed.tech/topics/nix.md>), [Package Management](<https://devfeed.tech/topics/package-management.md>), [Homebrew](<https://devfeed.tech/topics/homebrew.md>), [Tooling](<https://devfeed.tech/topics/tooling.md>), [Gitea](<https://devfeed.tech/topics/gitea.md>)

Tags: [announcements](<https://devfeed.tech/tags/announcements.md>), [cncf](<https://devfeed.tech/tags/cncf.md>), [community](<https://devfeed.tech/tags/community.md>), [governance](<https://devfeed.tech/tags/governance.md>), [homebrew](<https://devfeed.tech/tags/homebrew.md>), [package-management](<https://devfeed.tech/tags/package-management.md>), [recap](<https://devfeed.tech/tags/recap.md>), [tooling](<https://devfeed.tech/tags/tooling.md>), [weekly](<https://devfeed.tech/tags/weekly.md>)

### AI overview

This weekly recap covers governance changes in the Nix ecosystem, including Eelco Dolstra's departure from the NixOS Foundation Board and plans for a constitutional assembly. It also highlights the Aux fork, Brew-nix for packaging Homebrew casks with Nix, Noshell, Buildbot-nix support for Gitea, a Framework partnership, Nix-inst, and a new moderator.

### Source excerpt

Weekly recap of the announcements and activity in the Nix community and on the NixPkgs package repository.

## Setting up Nix on macOS

DevFeed: [Setting up Nix on macOS](<https://devfeed.tech/articles/setting-up-nix-on-macos-32441.md>)

Original publisher: [Read original article](<https://nixcademy.com/posts/nix-on-macos/>)

Author: Jacek Galowicz

Published: 2024-01-15T00:00:00Z

Content type: tutorial

Language: en

Sources: [Nixcademy Blog](<https://devfeed.tech/sources/nixcademy-blog.md>)

Topics: [macOS](<https://devfeed.tech/topics/macos.md>), [Nix](<https://devfeed.tech/topics/nix.md>), [configuration](<https://devfeed.tech/topics/configuration.md>), [Development](<https://devfeed.tech/topics/development.md>), [Package manager](<https://devfeed.tech/topics/package-manager.md>)

Tags: [command-line](<https://devfeed.tech/tags/command-line.md>), [configuration](<https://devfeed.tech/tags/configuration.md>), [declarative](<https://devfeed.tech/tags/declarative.md>), [development](<https://devfeed.tech/tags/development.md>), [homebrew](<https://devfeed.tech/tags/homebrew.md>), [how-to](<https://devfeed.tech/tags/how-to.md>), [installation](<https://devfeed.tech/tags/installation.md>), [macos](<https://devfeed.tech/tags/macos.md>)

### AI overview

A tutorial on installing Nix on macOS and bootstrapping a declarative setup. It covers package and system configuration, nix-darwin integration, Linux and Intel Mac compilation, and local Linux builder virtual machines.

### Source excerpt

Explore how to set up Nix on macOS effortlessly and boost your development workflow. Learn using nix-darwin for declarative package mgmt and sys configuration.

## My Mac Dev Setup and Favorite Tools

DevFeed: [My Mac Dev Setup and Favorite Tools](<https://devfeed.tech/articles/my-mac-dev-setup-and-favorite-tools-31864.md>)

Original publisher: [Read original article](<https://www.metachris.dev/2024/01/my-mac-dev-setup-and-favorite-tools/>)

Author: Chris Hager

Published: 2024-01-12T00:00:00Z

Content type: tutorial

Language: en

Sources: [Chris Hager](<https://devfeed.tech/sources/chris-hager.md>)

Topics: [Development](<https://devfeed.tech/topics/development.md>), [Tool](<https://devfeed.tech/topics/tool.md>), [Command-line interface](<https://devfeed.tech/topics/cli.md>), [Shell](<https://devfeed.tech/topics/shell.md>), [Terminal](<https://devfeed.tech/topics/terminal.md>), [backups](<https://devfeed.tech/topics/backups.md>), [passwords](<https://devfeed.tech/topics/passwords.md>), [Homebrew](<https://devfeed.tech/topics/homebrew.md>), [Package Management](<https://devfeed.tech/topics/package-management.md>), [Encryption](<https://devfeed.tech/topics/encryption.md>), [App](<https://devfeed.tech/topics/app.md>), [Obsidian](<https://devfeed.tech/topics/obsidian-md.md>)

Tags: [backup](<https://devfeed.tech/tags/backup.md>), [csv](<https://devfeed.tech/tags/csv.md>), [database](<https://devfeed.tech/tags/database.md>), [dev](<https://devfeed.tech/tags/dev.md>), [dev-setup](<https://devfeed.tech/tags/dev-setup.md>), [developer-setup](<https://devfeed.tech/tags/developer-setup.md>), [editor](<https://devfeed.tech/tags/editor.md>), [encryption](<https://devfeed.tech/tags/encryption.md>), [homebrew](<https://devfeed.tech/tags/homebrew.md>), [iterm2](<https://devfeed.tech/tags/iterm2.md>), [mac](<https://devfeed.tech/tags/mac.md>), [macos](<https://devfeed.tech/tags/macos.md>), [setup](<https://devfeed.tech/tags/setup.md>), [tools](<https://devfeed.tech/tags/tools.md>)

### AI overview

A practical guide to setting up a Mac for software development, covering system security, backups, password management, developer tools, favorite applications, terminal use, and keyboard shortcuts.

### Source excerpt

How I setup and use my computer and tools for development. I wrote this mostly as a guide for myself, for the next time I setup a computer, and hope it might be useful to others too. I'd love to hear your thoughts, ideas and additional tips in the comments below! Related: How I setup my Terminal and Bash. Contents Mac setup General system setup Favorite apps Keyboard shortcuts Application shortcuts Arranging windows Browser Terminal & Shell Docker for Node.

## Temporal v1.20: Simpler dev environments & Workflow scheduling

DevFeed: [Temporal v1.20: Simpler dev environments & Workflow scheduling](<https://devfeed.tech/articles/temporal-v1-20-simpler-dev-environments-workflow-scheduling-36050.md>)

Original publisher: [Read original article](<https://temporal.io/blog/temporal-v1-20-lighter-and-simpler-development-environments-and-improved>)

Author: Justin Pirie

Published: 2023-03-20T07:00:00Z

Content type: release

Language: en

Sources: [Temporal Blog](<https://devfeed.tech/sources/temporal-blog.md>)

Topics: [Development](<https://devfeed.tech/topics/development.md>), [releases](<https://devfeed.tech/topics/releases.md>), [Command-line interface](<https://devfeed.tech/topics/cli.md>), [distributed-systems](<https://devfeed.tech/topics/distributed-systems.md>), [Automation](<https://devfeed.tech/topics/automation.md>), [Containers](<https://devfeed.tech/topics/containers.md>), [elasticsearch](<https://devfeed.tech/topics/elasticsearch.md>), [datadog](<https://devfeed.tech/topics/datadog.md>), [cURL](<https://devfeed.tech/topics/curl.md>), [Homebrew](<https://devfeed.tech/topics/homebrew.md>), [Quartz](<https://devfeed.tech/topics/quartz.md>)

Tags: [automation](<https://devfeed.tech/tags/automation.md>), [cli](<https://devfeed.tech/tags/cli.md>), [containers](<https://devfeed.tech/tags/containers.md>), [curl](<https://devfeed.tech/tags/curl.md>), [datadog](<https://devfeed.tech/tags/datadog.md>), [dev](<https://devfeed.tech/tags/dev.md>), [distributed](<https://devfeed.tech/tags/distributed.md>), [distributed-systems](<https://devfeed.tech/tags/distributed-systems.md>), [elasticsearch](<https://devfeed.tech/tags/elasticsearch.md>), [homebrew](<https://devfeed.tech/tags/homebrew.md>), [product-news](<https://devfeed.tech/tags/product-news.md>), [quartz](<https://devfeed.tech/tags/quartz.md>), [scheduling](<https://devfeed.tech/tags/scheduling.md>), [v1](<https://devfeed.tech/tags/v1.md>), [workflow](<https://devfeed.tech/tags/workflow.md>)

### AI overview

Temporal v1.20 simplifies local development environments by packaging Temporalite into the core product and adding a Temporal CLI with installation options including curl, Homebrew, and binary downloads. The release also adds Advanced Visibility to the CLI, deprecates direct Advanced Visibility on Cassandra without Elasticsearch, and makes Scheduled Workflows generally available.

### Source excerpt

Explore Temporal v1.20's improvements in dev environments and Workflow scheduling, making it easier to adopt distributed systems best practices.

## Shipping completions for Go CLIs using GoReleaser and Cobra

DevFeed: [Shipping completions for Go CLIs using GoReleaser and Cobra](<https://devfeed.tech/articles/shipping-completions-for-go-clis-using-goreleaser-and-cobra-37739.md>)

Original publisher: [Read original article](<https://carlosbecker.com/posts/golang-completions-cobra/>)

Author: Carlos Alexandro Becker

Published: 2022-08-22T00:00:00Z

Content type: tutorial

Language: en

Sources: [Carlos Becker](<https://devfeed.tech/sources/carlos-becker.md>)

Topics: [Go Language](<https://devfeed.tech/topics/go-language.md>), [Command-line interface](<https://devfeed.tech/topics/cli.md>), [Shell](<https://devfeed.tech/topics/shell.md>), [Bash](<https://devfeed.tech/topics/bash.md>), [friendly interactive shell](<https://devfeed.tech/topics/fish.md>), [Zsh](<https://devfeed.tech/topics/zsh.md>), [Homebrew](<https://devfeed.tech/topics/homebrew.md>), [Unix](<https://devfeed.tech/topics/unix.md>)

Tags: [bash](<https://devfeed.tech/tags/bash.md>), [command-line](<https://devfeed.tech/tags/command-line.md>), [go](<https://devfeed.tech/tags/go.md>), [homebrew](<https://devfeed.tech/tags/homebrew.md>), [how-to](<https://devfeed.tech/tags/how-to.md>), [hugo](<https://devfeed.tech/tags/hugo.md>), [packaging](<https://devfeed.tech/tags/packaging.md>), [powershell](<https://devfeed.tech/tags/powershell.md>), [shell](<https://devfeed.tech/tags/shell.md>)

### AI overview

A tutorial on shipping shell completions for Go command-line tools using Cobra and GoReleaser. It covers generating completion files, enabling them through GoReleaser hooks, packaging them for archives, Homebrew, AUR, and nFPM, testing the packages, and optionally adding Unix man pages.

### Source excerpt

Everyone likes command line completions, so much that some even install extra tools just to have them.

## NuShell - When /bin/bash curl installs fail

DevFeed: [NuShell - When /bin/bash curl installs fail](<https://devfeed.tech/articles/nushell-when-bin-bash-curl-installs-fail-28204.md>)

Original publisher: [Read original article](<http://fuzzyblog.io/blog/nushell/2022/07/09/nushell-when-bin-bash-curl-installs-fail.html>)

Author: Fuzzygroup

Published: 2022-07-09T02:57:00Z

Content type: tutorial

Language: en

Sources: [Scott Johnson](<https://devfeed.tech/sources/scott-johnson.md>)

Topics: [Scripting, bash](<https://devfeed.tech/topics/scripting-bash.md>), [Bash](<https://devfeed.tech/topics/bash.md>), [cURL](<https://devfeed.tech/topics/curl.md>), [Homebrew](<https://devfeed.tech/topics/homebrew.md>), [Perl](<https://devfeed.tech/topics/perl.md>)

Tags: [bash](<https://devfeed.tech/tags/bash.md>), [curl](<https://devfeed.tech/tags/curl.md>), [homebrew](<https://devfeed.tech/tags/homebrew.md>), [nushell](<https://devfeed.tech/tags/nushell.md>), [perl](<https://devfeed.tech/tags/perl.md>), [rust](<https://devfeed.tech/tags/rust.md>), [script](<https://devfeed.tech/tags/script.md>)

### AI overview

The author reports that several commands and scripts failed when run directly in NuShell, including Homebrew install and uninstall commands. The suggested workaround is to start a /bin/bash session from NuShell, run the needed commands there, and type exit to return to NuShell.

### Source excerpt

I've liked the concept of NuShell since I first heard about it. I then liked it more when I discovered that Yehuda Katz was involved since I strongly believe in picking software based on the pedigree of the engineers involved (no I don't - yet - have engineer trading cards but I'm thinking about it). Although I have NuShell running on my experimental system, I've held off on using it on my main box mostly due to concerns about the vast amounts of things that pipe crap to /bin/bash like this: /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/uninstall.sh)" /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" /usr/bin/find "$(brew --prefix)/Caskroom/"*'/.metadata' -type f -name '*.rb' -print0 | /usr/bin/xargs -0 /usr/bin/perl -i -0pe 's/depends_on macos: \[.*?\]//gsm;s/depends_on macos: .*//g' That's an uninstall script, an install script and a find command. I tried all of these tonight on NuShell and they all failed. An example of this is: /Users/sjohnson/Sync/coding〉/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" /bin/bash: #!/bin/bash: No such file or directory /Users/sjohnson/Sync/coding〉 Note: For non NuShell users, you can tell its NuShell above by the greater than sign in the prompt. And then it struck me - I can likely simply execute /bin/bash from within NuShell and THEN run whatever I need to in bash. I tried it and it worked perfectly. So if you have problems with things that don't work on NuShell, try spinning up a /bin/bash session. After you're done, type exit and you are back in NuShell.

## Fixing a Hosed HomeBrew Installation

DevFeed: [Fixing a Hosed HomeBrew Installation](<https://devfeed.tech/articles/fixing-a-hosed-homebrew-installation-28214.md>)

Original publisher: [Read original article](<http://fuzzyblog.io/blog/osx/2022/07/09/fixing-a-hosed-homebrew-installation.html>)

Author: Fuzzygroup

Published: 2022-07-09T02:40:00Z

Content type: tutorial

Language: en

Sources: [Scott Johnson](<https://devfeed.tech/sources/scott-johnson.md>)

Topics: [Homebrew](<https://devfeed.tech/topics/homebrew.md>), [Authorization](<https://devfeed.tech/topics/authorization.md>)

Tags: [blog](<https://devfeed.tech/tags/blog.md>), [blog-post](<https://devfeed.tech/tags/blog-post.md>), [commands](<https://devfeed.tech/tags/commands.md>), [homebrew](<https://devfeed.tech/tags/homebrew.md>), [installation](<https://devfeed.tech/tags/installation.md>), [mac](<https://devfeed.tech/tags/mac.md>), [osx](<https://devfeed.tech/tags/osx.md>), [permissions](<https://devfeed.tech/tags/permissions.md>)

### AI overview

A blog post describes troubleshooting a broken Homebrew installation on a Mac where /usr/local/Cellar had incorrect ownership and installations failed because of permissions issues. The author reports that bulk permission changes fixed the problem, while warning that the approach is risky and should be used at the reader's own risk.

### Source excerpt

NOTE: I'm not telling you to do this. This blog post advocates bulk permission changing and that's risky but HomeBrew was entirely broken and brew doctor did not work. And this solution did. Use at your own risk. I have two primary machines - a Mac Desktop and a dual monitor Mac Laptop. I use the laptop more mostly from habit but I'd really like to use the desktop for something that makes me feel better about it being next to me and yet rarely used. One of the reasons for two machines is one is my daily driver and one is experimental. For example, my desktop I installed NuShell on recently as I didn't (yet) trust it enough. I recently discovered that HomeBrew wouldn't install things correctly on my desktop. The issue was always permissions issues and when I dug into it, I found that /usr/local/Cellar was owned by, well, NOT me. The answer, as with so many other *nix things is chown (DO NOT DO THE FOLLOWING): sudo chown -R sjohnson:wheel /usr/local/Cellar -or- that's what I thought the answer was. Unfortunately while a: brew install boost worked seemingly nicely, it failed at the final step: ==> Downloading https://ghcr.io/v2/homebrew/core/php/blobs/sha256:d124757fd19130379ccef3e1bd26fd082fa11a543aad37a6add6b942fb3d327e ==> Downloading from https://pkg-containers.githubusercontent.com/ghcr1/blobs/sha256:d124757fd19130379ccef3e1bd26fd082fa11a543aad37a6add6b942fb3d327e?se=2022-07-09T02%3A50%3A00Z&sig=ea5rDsciKGA8m41Nuw4d6Wkg370EFvFhExVvQkjfr1Q%3D&sp=r&spr=https&sr=b&sv=2019-12-12 ######################################################################## 100.0% ==> Downloading https://ghcr.io/v2/homebrew/core/postgresql/manifests/14.4 ######################################################################## 100.0% ==> Downloading https://ghcr.io/v2/homebrew/core/postgresql/blobs/sha256:1e258c37f55737787151ee3a5276e805e0aa4e30cf5d166bdc2208d0d7f812c2 ==> Downloading from https://pkg-containers.githubusercontent.com/ghcr1/blobs/sha256:1e258c37f55737787151ee3a5276e805e0aa4e30

## Installing the xcode-kotlin Plugin with a Kotlin Native CLI

DevFeed: [Installing the xcode-kotlin Plugin with a Kotlin Native CLI](<https://devfeed.tech/articles/xcode-kotlin-cli-tadeas-kriz-38351.md>)

Original publisher: [Read original article](<https://touchlab.co/xcode-kotlin-cli>)

Published: 2022-05-18T18:34:00Z

Content type: tutorial

Language: en

Sources: [Touchlab | Enterprise Mobile Innovation & Development](<https://devfeed.tech/sources/touchlab-enterprise-mobile-innovation-development.md>)

Topics: [Xcode](<https://devfeed.tech/topics/xcode.md>), [Command-line interface](<https://devfeed.tech/topics/cli.md>), [FIRST Robotics Competition](<https://devfeed.tech/topics/first-robotics-competition.md>)

Tags: [cli](<https://devfeed.tech/tags/cli.md>), [debugging](<https://devfeed.tech/tags/debugging.md>), [developer-experience](<https://devfeed.tech/tags/developer-experience.md>), [developer-tooling](<https://devfeed.tech/tags/developer-tooling.md>), [featured](<https://devfeed.tech/tags/featured.md>), [homebrew](<https://devfeed.tech/tags/homebrew.md>), [ios](<https://devfeed.tech/tags/ios.md>), [kotlin-multiplatform](<https://devfeed.tech/tags/kotlin-multiplatform.md>), [kotlin-native](<https://devfeed.tech/tags/kotlin-native.md>), [xcode](<https://devfeed.tech/tags/xcode.md>)

### AI overview

This article explains replacing the xcode-kotlin plugin's installation script with a Kotlin Native CLI tool. The tool configures the plugin across installed Xcode versions, supports Homebrew installation, removes certain Load Bundle prompts, and provides diagnostic commands.

### Source excerpt

The xcode-kotlin plugin allows debugging of Kotlin code running in an iOS application directly from Xcode.

## Postgres Woes on OSX with libicui18n.69.dylib

DevFeed: [Postgres Woes on OSX with libicui18n.69.dylib](<https://devfeed.tech/articles/postgres-woes-on-osx-with-libicui18n-69-dylib-28223.md>)

Original publisher: [Read original article](<http://fuzzyblog.io/blog/postgres/2022/04/21/postgres-woes-on-osx-with-libicui18n-69-dylib.html>)

Author: Fuzzygroup

Published: 2022-04-21T13:33:00Z

Content type: tutorial

Language: en

Sources: [Scott Johnson](<https://devfeed.tech/sources/scott-johnson.md>)

Topics: [Homebrew](<https://devfeed.tech/topics/homebrew.md>), [PostgreSQL](<https://devfeed.tech/topics/postgresql.md>), [postgresql clusters](<https://devfeed.tech/topics/postgresql-clusters.md>), [upgrade](<https://devfeed.tech/topics/upgrade.md>)

Tags: [dependencies](<https://devfeed.tech/tags/dependencies.md>), [errors](<https://devfeed.tech/tags/errors.md>), [homebrew](<https://devfeed.tech/tags/homebrew.md>), [osx](<https://devfeed.tech/tags/osx.md>), [postgres](<https://devfeed.tech/tags/postgres.md>), [postgresql](<https://devfeed.tech/tags/postgresql.md>), [upgrade](<https://devfeed.tech/tags/upgrade.md>)

### AI overview

A troubleshooting account of a PostgreSQL startup failure on macOS caused by a missing libicui18n.69.dylib library. Reinstalling icu4c with Homebrew led to PostgreSQL being upgraded and running locally again.

### Source excerpt

Perhaps it is me but I've found that homebrew seems to give more errors and take longer than it used it. I just got hit with this error: /usr/local/opt/postgresql/bin/postgres -v dyld: Library not loaded: /usr/local/opt/icu4c/lib/libicui18n.69.dylib Referenced from: /usr/local/opt/postgresql/bin/postgres Reason: image not found Digging into the OSX postgres log here: tail -n 100 /usr/local/var/log/postgresql.log helped but didn't tell me what to do. An awful lot of googling didn't find me an answer but then I hit on: brew reinstall icu4c That churned for a bit but then declared a decisive victory: 🍺 /usr/local/Cellar/maxima/5.46.0: 2,842 files, 119.1MB ==> Running `brew cleanup maxima`... Removing: /usr/local/Cellar/maxima/5.45.1_4... (2,774 files, 118.4MB) Removing: /Users/sjohnson/Library/Caches/Homebrew/maxima--5.45.1_4... (38.3MB) ==> Upgrading postgresql 13.2_2 -> 14.2_1 ==> Installing dependencies for postgresql: krb5 ==> Installing postgresql dependency: krb5 ==> Pouring krb5--1.19.3.catalina.bottle.tar.gz 🍺 /usr/local/Cellar/krb5/1.19.3: 162 files, 5.2MB ==> Installing postgresql ==> Pouring postgresql--14.2_1.catalina.bottle.tar.gz ==> Caveats To migrate existing data from a previous major version of PostgreSQL run: brew postgresql-upgrade-database This formula has created a default database cluster with: initdb --locale=C -E UTF-8 /usr/local/var/postgres For more details, read: https://www.postgresql.org/docs/14/app-initdb.html To restart postgresql after an upgrade: brew services restart postgresql Or, if you don't want/need a background service you can just run: /usr/local/opt/postgresql/bin/postgres -D /usr/local/var/postgres ==> Summary 🍺 /usr/local/Cellar/postgresql/14.2_1: 3,305 files, 45.5MB ==> Running `brew cleanup postgresql`... Removing: /usr/local/Cellar/postgresql/13.2_2... (3,218 files, 42.6MB) Removing: /Users/sjohnson/Library/Caches/Homebrew/postgresql--13.2_2... (11.1MB) ==> Checking for dependents of upgraded formulae... ==> No broken dep

## And Now For Starting Again with Elixir and Phoenix Not Elm

DevFeed: [And Now For Starting Again with Elixir and Phoenix Not Elm](<https://devfeed.tech/articles/and-now-for-starting-again-with-elixir-and-phoenix-not-elm-28163.md>)

Original publisher: [Read original article](<http://fuzzyblog.io/blog/elixir/2022/04/01/and-now-for-starting-again-with-elixir-not-elm.html>)

Author: Fuzzygroup

Published: 2022-04-01T15:57:00Z

Content type: tutorial

Language: en

Sources: [Scott Johnson](<https://devfeed.tech/sources/scott-johnson.md>)

Topics: [Elixir](<https://devfeed.tech/topics/elixir.md>), [phoenix](<https://devfeed.tech/topics/phoenix.md>), [Elm](<https://devfeed.tech/topics/elm.md>), [Laravel](<https://devfeed.tech/topics/laravel.md>), [MySQL](<https://devfeed.tech/topics/mysql.md>), [Homebrew](<https://devfeed.tech/topics/homebrew.md>), [Processes](<https://devfeed.tech/topics/processes.md>)

Tags: [code](<https://devfeed.tech/tags/code.md>), [elixir](<https://devfeed.tech/tags/elixir.md>), [elm](<https://devfeed.tech/tags/elm.md>), [homebrew](<https://devfeed.tech/tags/homebrew.md>), [laravel](<https://devfeed.tech/tags/laravel.md>), [mysql](<https://devfeed.tech/tags/mysql.md>), [phoenix](<https://devfeed.tech/tags/phoenix.md>)

### AI overview

The author sets aside Elm after finding a simple HTML form frustrating to implement and experiments with moving a Laravel application to Elixir and Phoenix. The article documents updating Elixir on macOS, installing Phoenix, generating a Phoenix application with MySQL, configuring the database, and adapting migrations for an existing schema.

### Source excerpt

In my last blog post, I dug into Elm and while I like a number of things conceptually about Elm, the process of implementing nothing more than a maybe 8 element HTML form left me hugely frustrated and annoyed. I also didn't like the way that Elm bundles code and display into one thing. I may be a traditionalist perhaps but the separation of views and code really does work well in practice. I get that Elm is a different thing but it shouldn't be this hard to just put some text and an html form on the screen. And, so, I'm putting Elm to the side for a bit and going to experiment with using Elixir and Phoenix for my previous Laravel application. If nothing else this should be much more straightforward as it is moving from one MVC style framework to another albeit from an OO lang (php) to a functional lang (elixir). Step 1: Getting Up To Date I'm on OSX and my goal was to get to the current Elixir and Phoenix before I started, This I found to be surprisingly problematic. And, perhaps, it was my fault as I don't claim to be great with HomeBrew. I started with: brew update brew install elixir@1.12 But no matter what I did, I couldn't get past elixir 1.11. So my next step was to get rid of everything. Getting Rid of Everything I started with: brew uninstall elixir And then I got a warning about a shallow copy issue which told me to run: git -C /usr/local/Homebrew/Library/Taps/homebrew/homebrew-core fetch --unshallow brew update brew install elixir which finally resulted in: ❯ elixir -v Erlang/OTP 24 [erts-12.3.1] [source] [64-bit] [smp:16:16] [ds:16:16:10] [async-threads:1] [jit] [dtrace] Elixir 1.13.3 (compiled with Erlang/OTP 24) Installing Phoenix A bit of googling gave me this command to install the newest Phoenix: mix archive.install hex phx_new Step 2: Generating a New App Although I've actually been to ElixirCon, things have changed a lot in a few years. Here's the new syntax for generating an app: mix phx.new kit_selector3 --database mysql Normally I'd be using pos

## macOS Setup after 15 Years of Linux

DevFeed: [macOS Setup after 15 Years of Linux](<https://devfeed.tech/articles/macos-setup-after-15-years-of-linux-30823.md>)

Original publisher: [Read original article](<https://hookrace.net/blog/macos-setup/>)

Published: 2021-12-25T23:00:00Z

Content type: article

Language: en

Sources: [Dennis Felsing](<https://devfeed.tech/sources/dennis-felsing.md>)

Topics: [macOS](<https://devfeed.tech/topics/macos.md>), [Homebrew](<https://devfeed.tech/topics/homebrew.md>), [Linux](<https://devfeed.tech/topics/linux.md>), [cpu](<https://devfeed.tech/topics/cpu.md>)

Tags: [command-line](<https://devfeed.tech/tags/command-line.md>), [homebrew](<https://devfeed.tech/tags/homebrew.md>), [intel](<https://devfeed.tech/tags/intel.md>), [linux](<https://devfeed.tech/tags/linux.md>), [macos](<https://devfeed.tech/tags/macos.md>)

### AI overview

A developer describes moving from a long-established Linux desktop setup to using an M1 Pro MacBook Pro as a daily driver. The article discusses the hardware, Homebrew installation choices, ARM64 compatibility issues with mpv, and video playback performance using Rosetta 2, Firefox, and a custom FFmpeg build.

### Source excerpt

About 3 years ago I wrote about my Linux Desktop Setup and having used pretty much the same software setup for 10-15 years. My setup used to be heavily keyboard based. Now for work I am for the first time using a macOS-based Macbook Pro with an M1 Pro CPU. I spent the last 3 weeks using it as a daily driver, tweaking it here and there. Here are my experiences. Hardware-wise the machine is great. With the 10 core ARM64 CPU I get about 2-3 times the CPU performance of my desktop system with an Intel i7 6700k. In DDNet I can reach 1800 FPS which is clearly more than enough and about 10 times the FPS I have with the 6700k's iGPU. I haven't heard the fan turn on at all yet, so either my workloads, and even my compilations, are too light-weight, or the fan is pretty quiet. The integrated 120 Hz screen is far better than anything I've had before, with clearer colors and smoother motion. Installing Software macOS's AppStore doesn't seem to have most of the relevant applications for me. Homebrew seems to be the most popular third-party package manager for macOS, so I chose that, hoping that it would support most programs I want to use. Command line applications can be installed with brew install, while graphical applications that you want acccessible in the regular Applications directory need a brew install --cask. For some applications like mpv this can be a bit confusing since there is both a command-line Formulae and a GUI Cask available for it. The Cask doesn't support arm64 natively yet, since the maintainer of it doesn't have an M1 Mac and mpv doesn't provide official binaries. So here I noticed a major difference in how Homebrew seems to work compared to Arch Linux for example. On Arch Linux applications are built from source code centrally instead of relying on binaries from a vendor. Luckily it was easy enough to build a DMG of mpv myself, which I then installed by dragging it into the Applications folder: git clone https://github.com/mpv-player/mpv cd mpv git clean

## Homebrew - uninstall formula with dependencies

DevFeed: [Homebrew - uninstall formula with dependencies](<https://devfeed.tech/articles/homebrew-uninstall-formula-with-dependencies-27669.md>)

Original publisher: [Read original article](<https://gagor.pro/2021/11/homebrew-uninstall-formula-with-dependencies/>)

Author: Tom

Published: 2021-11-05T00:00:00Z

Content type: tutorial

Language: en

Sources: [Tomasz Gągor](<https://devfeed.tech/sources/tomasz-gagor.md>)

Topics: [Homebrew](<https://devfeed.tech/topics/homebrew.md>), [macOS](<https://devfeed.tech/topics/macos.md>)

Tags: [bash](<https://devfeed.tech/tags/bash.md>), [brew-autoremove](<https://devfeed.tech/tags/brew-autoremove.md>), [clean-uninstall-homebrew](<https://devfeed.tech/tags/clean-uninstall-homebrew.md>), [command](<https://devfeed.tech/tags/command.md>), [dependencies](<https://devfeed.tech/tags/dependencies.md>), [disk-space](<https://devfeed.tech/tags/disk-space.md>), [homebrew](<https://devfeed.tech/tags/homebrew.md>), [homebrew-uninstall-dependencies](<https://devfeed.tech/tags/homebrew-uninstall-dependencies.md>), [how-to](<https://devfeed.tech/tags/how-to.md>), [macos](<https://devfeed.tech/tags/macos.md>), [macos-brew-tips](<https://devfeed.tech/tags/macos-brew-tips.md>), [macos-package-management](<https://devfeed.tech/tags/macos-package-management.md>), [packages](<https://devfeed.tech/tags/packages.md>), [remove-homebrew-formula](<https://devfeed.tech/tags/remove-homebrew-formula.md>)

### AI overview

A tutorial on uninstalling a Homebrew formula and its dependencies on macOS. It recommends using brew autoremove, while warning that the command may remove packages you still need, so users should review its output carefully.

### Source excerpt

Learn how to uninstall a Homebrew formula along with its dependencies on MacOS, ensuring a clean removal and freeing up disk space.

## A practical look at JEP-412 in JDK17 with libsodium

DevFeed: [A practical look at JEP-412 in JDK17 with libsodium](<https://devfeed.tech/articles/a-practical-look-at-jep-412-in-jdk17-with-libsodium-26083.md>)

Original publisher: [Read original article](<https://blog.arkey.fr/2021/09/04/a-practical-look-at-jep-412-in-jdk17-with-libsodium/>)

Author: brice.dutheil@gmail.com (Brice Dutheil)

Published: 2021-09-04T15:38:06Z

Content type: tutorial

Language: en

Sources: [The Coffee Workshop](<https://devfeed.tech/sources/the-coffee-workshop.md>)

Topics: [Java](<https://devfeed.tech/topics/java.md>), [modules](<https://devfeed.tech/topics/modules.md>), [Gradle](<https://devfeed.tech/topics/gradle.md>), [configuration](<https://devfeed.tech/topics/configuration.md>)

Tags: [code](<https://devfeed.tech/tags/code.md>), [configuration](<https://devfeed.tech/tags/configuration.md>), [gradle](<https://devfeed.tech/tags/gradle.md>), [homebrew](<https://devfeed.tech/tags/homebrew.md>), [java](<https://devfeed.tech/tags/java.md>), [jvm](<https://devfeed.tech/tags/jvm.md>), [modules](<https://devfeed.tech/tags/modules.md>)

### AI overview

A practical tutorial on using JEP-412's incubating Foreign Linker API in JDK 17 to call the native libsodium library from Java. It covers experimentation in jshell, module and native-access options, symbol lookup, and Gradle configuration.

### Source excerpt

JDK 17 is coming and with the incubating JEP-412, let's have a practical look at this API that should supersede JNI.

## Programming the ESP8266 on an M1 Mac

DevFeed: [Programming the ESP8266 on an M1 Mac](<https://devfeed.tech/articles/programming-the-esp8266-on-an-m1-mac-39519.md>)

Original publisher: [Read original article](<https://rambo.codes/posts/2021-02-16-programming-the-esp8266-on-an-m1-mac>)

Published: 2021-02-16T17:30:00Z

Content type: tutorial

Language: en

Sources: [Rambo Codes](<https://devfeed.tech/sources/rambo-codes.md>)

Topics: [ESP8266](<https://devfeed.tech/topics/esp8266.md>), [Arduino](<https://devfeed.tech/topics/arduino.md>), [Microcontrollers](<https://devfeed.tech/topics/microcontrollers.md>), [Homebrew](<https://devfeed.tech/topics/homebrew.md>), [Programming](<https://devfeed.tech/topics/programming.md>)

Tags: [arduino](<https://devfeed.tech/tags/arduino.md>), [esp8266](<https://devfeed.tech/tags/esp8266.md>), [homebrew](<https://devfeed.tech/tags/homebrew.md>), [microcontrollers](<https://devfeed.tech/tags/microcontrollers.md>), [programming](<https://devfeed.tech/tags/programming.md>)

### AI overview

This article explains how to program an ESP8266 microcontroller with the Arduino Pro IDE on an M1 Mac. It documents a workaround involving Homebrew-installed Python 3 and changing the ESP8266 upload tool to use that Python installation.

### Source excerpt

Gui Rambo writes about his coding and reverse engineering adventures.

## Taking Another Look at Phoenix and Elixir - Part 1 - Upgrading

DevFeed: [Taking Another Look at Phoenix and Elixir - Part 1 - Upgrading](<https://devfeed.tech/articles/taking-another-look-at-phoenix-and-elixir-part-1-upgrading-28161.md>)

Original publisher: [Read original article](<http://fuzzyblog.io/blog/elixir/2020/09/15/taking-another-look-at-phoenix-and-elixir-part-1-upgrading.html>)

Author: Fuzzygroup

Published: 2020-09-15T14:23:00Z

Content type: tutorial

Language: en

Sources: [Scott Johnson](<https://devfeed.tech/sources/scott-johnson.md>)

Topics: [Elixir](<https://devfeed.tech/topics/elixir.md>), [phoenix](<https://devfeed.tech/topics/phoenix.md>), [Homebrew](<https://devfeed.tech/topics/homebrew.md>), [Package manager](<https://devfeed.tech/topics/package-manager.md>), [Erlang](<https://devfeed.tech/topics/erlang.md>), [Rails](<https://devfeed.tech/topics/rails.md>)

Tags: [elixir](<https://devfeed.tech/tags/elixir.md>), [erlang](<https://devfeed.tech/tags/erlang.md>), [homebrew](<https://devfeed.tech/tags/homebrew.md>), [installation](<https://devfeed.tech/tags/installation.md>), [phoenix](<https://devfeed.tech/tags/phoenix.md>), [rails](<https://devfeed.tech/tags/rails.md>), [tooling](<https://devfeed.tech/tags/tooling.md>), [upgrade](<https://devfeed.tech/tags/upgrade.md>)

### AI overview

A practical guide to upgrading Elixir, Erlang/OTP, Mix, Hex, and Phoenix, then creating a sample Phoenix application and preparing to compare it with an existing Rails codebase.

### Source excerpt

I've been on the fence about Phoenix and Elixir for a while and I thought I'd take at least a quick dive. I've had a development system for Phoenix and Elixir since at least 2016 but I haven't done much. This means that the first task is bringing it into the 2020s. Upgrading Elixir I installed Elixir via HomeBrew which means it is a simple: which elixir /usr/local/bin/elixir Note: It can be hard sometimes to know if you installed things via HomeBrew and checking their location is an easy cheap as HomeBrew installs stuff to /usr/local/bin And then: brew upgrade elixir And then: elixir --version Erlang/OTP 23 [erts-11.0.3] [source] [64-bit] [smp:16:16] [ds:16:16:10] [async-threads:1] [hipe] [dtrace] Elixir 1.10.4 (compiled with Erlang/OTP 23) You can also use just -v: elixir -v Erlang/OTP 23 [erts-11.0.3] [source] [64-bit] [smp:16:16] [ds:16:16:10] [async-threads:1] [hipe] [dtrace] Elixir 1.10.4 (compiled with Erlang/OTP 23) Upgrading Mix and Hex Mix and Hex give the equivalent of a build tool (like Rake from the Rails world) and a Package Manager (like Gem / Bundler). To upgrade mix, you use: mix local.hex Found existing entry: /Users/sjohnson/.mix/archives/hex-0.20.5 Are you sure you want to replace it with "https://repo.hex.pm/installs/1.10.0/hex-0.20.5.ez"? [Yn] Y * creating /Users/sjohnson/.mix/archives/hex-0.20.5 And that will upgrade both mix and hex. Upgrading Phoenix The phoenix framework version I have dates back to 1.2 or 1.3 I think. The first step is to figure out what version I have: mix phoenix.new --version Phoenix v1.3.3 The method to upgrade the Phoenix framework itself is: mix archive.install hex phx_new 1.5.4 I used a google query to discover that the current Phoenix framework version was 1.5.4. The other way to find this version number is to go to this url: https://hexdocs.pm/phoenix/installation.html And then look at the drop down of different versions in the left hand sidebar. The latest version is always at the top. Creating a Sample App My fir

## Building and Customizing Iosevka as a Programming Font on macOS

DevFeed: [Building and Customizing Iosevka as a Programming Font on macOS](<https://devfeed.tech/articles/my-new-programming-font-iosevka-25227.md>)

Original publisher: [Read original article](<https://kau.sh/blog/build-iosevka-font-mac-os/>)

Author: Kaushik Gopal

Published: 2020-04-14T07:00:00Z

Content type: tutorial

Language: en

Sources: [Kaushik Gopal's Site](<https://devfeed.tech/sources/kaushik-gopal-s-site.md>)

Topics: [Font](<https://devfeed.tech/topics/font.md>), [Programming](<https://devfeed.tech/topics/programming.md>), [macOS](<https://devfeed.tech/topics/macos.md>), [Open Source](<https://devfeed.tech/topics/open-source.md>), [Homebrew](<https://devfeed.tech/topics/homebrew.md>)

Tags: [fonts](<https://devfeed.tech/tags/fonts.md>), [homebrew](<https://devfeed.tech/tags/homebrew.md>), [ligatures](<https://devfeed.tech/tags/ligatures.md>), [macos](<https://devfeed.tech/tags/macos.md>), [npm](<https://devfeed.tech/tags/npm.md>), [open-source](<https://devfeed.tech/tags/open-source.md>), [programming](<https://devfeed.tech/tags/programming.md>), [programming-font](<https://devfeed.tech/tags/programming-font.md>)

### AI overview

The article explains why the author prefers Iosevka over IBM Plex Mono for programming, citing legibility, narrow spacing, open-source availability, customization, and ligatures. It also describes customizing glyphs and building a customized version from source on macOS using Homebrew, pip, and npm.

### Source excerpt

If you're looking to just copy-paste instructions, jump to the section below. For the longest time, I've been rocking IBM Plex Mono as my programming font. While it has served me well, I started to experiment with some newer monospaced typefaces to see if I could find one that was even more legible.1 That experiment quickly devolved into a rabbit-hole evaluation of a bunch of new programming fonts. Hello Iosevka ## Eventually, I landed up with the font Iosevka: It's far more legible (courtesy the extra long glyphs) It's set pretty narrow which makes it pretty space efficient 2 It's 100% open-source You can build the font from source and customize it pretty extensively There's ligatures (...or not ...or dig this- for specific languages!) Now at the outset, I actually didn't like Iosevka at all. It was unbearably narrow for my taste but thankfully it also comes with an "Extended" variant. The extended variant adds a little more breathing room between characters making it less condensed. After I fiddled with it more and chose specific glyphs that are easier on my eyes, I think I landed up with a version that I absolutely love: It's more legible and dare I say a little more appealing than the trusty IBM Plex Mono .3 It almost hearkens back to my Inconsolata days (inspired by Gary Bernhardt's DAS screen casts). Customizing Iosevka ## Iosevka allows you to pick specific glyphs for certain characters. If you notice the cherry-picking section in the above image, I've chosen slightly different variants of g, l, y, G, Q, *, $ and %. If you head on over to the main website, you can even live preview and test a bunch of combinations. Build Iosevka from source (on macOS) ## Once you've indulged your stylistic tendencies and honed in on the style you prefer, you can build the font right from the source. I didn't find too many instructions online on how to do this with a Mac, so if you're looking to do the same, this should save you some trouble: Install necessary dependencies ### You

[Next page](<https://devfeed.tech/tags/homebrew.md?cursor=WyIyMDIwLTA0LTE0VDA3OjAwOjAwKzAwOjAwIiwgIjZiYzgzYTNhLTNmMzEtNGEzNy05OGZiLTNmZTYzM2MwOTI3OSJd>)