diff --git a/docs/talks/assets/20260305 - Pixi/notes.md b/docs/talks/assets/20260305 - Pixi/notes.md new file mode 100644 index 0000000..d1507f4 --- /dev/null +++ b/docs/talks/assets/20260305 - Pixi/notes.md @@ -0,0 +1,81 @@ +# Installing Pixi + +A simple guide to install Pixi and create a basic project. + +--- + +## Install Pixi + +[https://pixi.prefix.dev/latest/installation/](https://pixi.prefix.dev/latest/installation/) + + +### macOS and Linux + +```bash +curl -fsSL https://pixi.sh/install.sh +``` + + +## Create a folder + +```bash +mkdir my-project +cd my-project +``` +Create a folder and go into the folder + +## Initialize pixi + +```bash +pixi init +``` +This creates a new Pixi project in the current folder. + +## Add Python and Packages + +Add python: +```bash +pixi add python +``` +Add a specific Python version: +```bash +pixi add python=3.11 +``` +Add additional packages: +```bash +pixi add numpy pandas +``` + +## Project Files + +Pixi manages two important files: + +- pixi.toml – project configuration and dependency declarations + +- pixi.lock – exact resolved versions for reproducibility + + +## Create and Activate the Environment + +Create and activate the environment defined in pixi.toml: + +```bash +pixi shell +``` + +## Reproducible Dependencies (Time-Based) + +To ensure packages are no newer than a certain date, use a dated channel snapshot in pixi.toml. + +```toml +# in your pixi.toml +exclude-newer = "2023-02-01" +``` + +## Update the Environment + +After changing pixi.toml: + +```bash +pixi install +``` diff --git a/docs/talks/assets/20260305 - Pixi/slides.pdf b/docs/talks/assets/20260305 - Pixi/slides.pdf new file mode 100644 index 0000000..ce36524 Binary files /dev/null and b/docs/talks/assets/20260305 - Pixi/slides.pdf differ diff --git a/docs/talks/index.md b/docs/talks/index.md index 007319b..aa1c45b 100644 --- a/docs/talks/index.md +++ b/docs/talks/index.md @@ -26,8 +26,6 @@ Abstract: ... _Titles are placeholder._ -- 2026-03-05 | "Supercharge your Python environments using Pixi" by Barber Vos ([:material-github: Discussion](https://github.com/UU-IMAU/python-for-lunch/issues/51)) - - Abstract: Many research projects depend on a specific computational environment. Over time, changes in dependencies, Python versions, or operating systems can make scripts harder to run or share, especially when working across different machines or with collaborators. In this talk, I will introduce Pixi, a drop-in replacement for Conda which provides much better workflows for managing project environments and dependencies. Whether you work alone or in a team, Pixi helps you see exactly what your project depends on, collaborate without environment headaches, and reproduce other researchers’ work. - 2026-03-19 | TBD - 2026-04-02\* | "Open code from a journal editor’s perspective - an open discussion" by Erik van Sebille ([:material-github: Discussion](https://github.com/UU-IMAU/python-for-lunch/issues/18)) - 2026-04-16\* | "Data processing with CDO" by Oliver Mehling ([:material-github: Discussion](https://github.com/UU-IMAU/python-for-lunch/issues/38)) @@ -116,6 +114,15 @@ _Titles are placeholder._ **Abstract:** Having a grasp on the tools that Xarray gives you is the difference between a performant one-liner, and nested for-loops that take minutes to compute. In this talk, we go through the computational patterns in the Xarray toolbox, breaking them down and showing when to use them. These powerful abstractions from array programming allow for the efficient working with array data, with many concepts also extending to Numpy and other array libraries. We will be continuing with the amazing Pythia Foundations resource for this talk, as well as looking at the Xarray documentation. +### 2026-03-05 | "Supercharge your Python environments using Pixi" by Barber Vos + +[:octicons-video-16: Recording](https://youtu.be/cl66VMA6Q2A), +[:material-presentation-play: Slideshow](./assets/20260305%20-%20Pixi/slides.pdf), +[:material-file-document: Notes](./assets/20260305%20-%20Pixi/notes), +[:material-github: Discussion](https://github.com/UU-IMAU/python-for-lunch/issues/51) + +**Abstract:** Many research projects depend on a specific computational environment. Over time, changes in dependencies, Python versions, or operating systems can make scripts harder to run or share, especially when working across different machines or with collaborators. In this talk, I will introduce Pixi, a drop-in replacement for Conda which provides much better workflows for managing project environments and dependencies. Whether you work alone or in a team, Pixi helps you see exactly what your project depends on, collaborate without environment headaches, and reproduce other researchers’ work. + ### Archived talks [Archived talks](https://github.com/UU-IMAU/Python-for-lunch-Notebooks/blob/main/archived)