I have finally decided what to put in my presentation. I wrote my abstract in Emacs Org Mode, so I exported it to HTML if you think that looks better on the website. Anyway, here is the abstract:
____________________________
THE NIX ECOSYSTEM - PART 1
____________________________
Table of Contents
_________________
1. Abstract
.. 1. Introduction
.. 2. Nixlang
.. 3. Nix-Shell
.. 4. Disko
.. 5. Home-Manager
.. 6. Nixpkgs
.. 7. Real-World Example
2. Presenter
3. Date
4. Part 2
1 Abstract
==========
1.1 Introduction
~~~~~~~~~~~~~~~~
Nix, to put it succinctly, is an ecosystem of tools for making
software deployments more reproducible. It aims to eliminate the
complaint of "it works on my machine."
In order to achieve this, an incredibly powerful set of tools has been
developed. This presentation will cover a few of the most popular Nix
projects, namely:
1.2 Nixlang
~~~~~~~~~~~
- The purely functional domain-specific-language that all other Nix
tools are configured in
1.3 Nix-Shell
~~~~~~~~~~~~~
- An ephemeral shell environment which allows developers to specify
dependencies, set environment variables, run setup scripts etc for a
reproducible development environment
- Solves many of the same use cases as Docker for developers, but is
more lightweight
- Also allows regular users to test out software before installing it
1.4 Disko
~~~~~~~~~
- A tool which allows disk partitions and filesystem to be described
in Nixlang
- Then it can automatically format and mount drives with a single
command
1.5 Home-Manager
~~~~~~~~~~~~~~~~
- A tool which uses Nixlang to configure a user's home directory, and
can work alongside or replace standard dotfiles
1.6 Nixpkgs
~~~~~~~~~~~
- One of the largest, most up-to-date software repositories in the
world
- Larger than the AUR and much better maintained
1.7 Real-World Example
~~~~~~~~~~~~~~~~~~~~~~
This presentation will also show an example of how the author used
Nixpkgs to replace the use of traditional package managers in an
install script in a real-world software project. This expanded the
amount of distros supported while simultaneously reducing maintainer
overhead.
2 Presenter
===========
Zachary Liebl (
hartf...@zachliebl.com)
3 Date
======
Thursday November 21st 2024 at 6:30PM EST
4 Part 2
========
Part 2 (scheduled for December) will cover NixOS and related topics