Using Nix to Create Reproducible Golang Development Environments
Offered By: Conf42 via YouTube
Course Description
Overview
Explore how to create reproducible Golang development environments using Nix in this conference talk from Conf42 Golang 2024. Learn about the fundamentals of Nix, its declarative nature, and how it addresses common development environment issues. Dive into practical examples of setting up Golang environments, including the use of tools.go and flake.nix. Discover the benefits of direnv for streamlined usage and how to implement pre-commit hooks. Gain insights into Nix's inner workings, including evaluation and derivations, and understand the advantages it offers over traditional methods. Explore Nix flakes, their structure, and how to integrate them into CI/CD pipelines. Compare Nix with Docker and access additional resources for further learning. This comprehensive talk covers everything from basic concepts to advanced implementations, making it valuable for developers seeking to enhance their Golang development workflow.
Syllabus
intro
preamble
who is this for?
what is nix?
declarative
what is the problem?
summary
golang
tools.go
creative our first dev environment
flake.nix
summary
direnv
usage
remote environments
pre-commit
summary
how does nix work?
evaluation
derivations
advantages
nix flakes
flake.nix
flake.lock
ci
gitlab ci
ci logs
why not docker?
further
slides, links, resources
reference & thanks
Taught by
Conf42
Related Courses
Cloud Computing Applications, Part 1: Cloud Systems and InfrastructureUniversity of Illinois at Urbana-Champaign via Coursera Introduction to Cloud Infrastructure Technologies
Linux Foundation via edX Introduction aux conteneurs
Microsoft Virtual Academy via OpenClassrooms The Docker for DevOps course: From development to production
Udemy Windows Server 2016: Virtualization
Microsoft via edX