https://github.com/goergen95/flakefast
Repository with Nix flakes for setting up customized development environments while having breakfast
https://github.com/goergen95/flakefast
nix reproducibility rspatial rstats
Last synced: 12 days ago
JSON representation
Repository with Nix flakes for setting up customized development environments while having breakfast
- Host: GitHub
- URL: https://github.com/goergen95/flakefast
- Owner: goergen95
- License: mit
- Created: 2024-12-18T12:06:14.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2025-02-06T14:41:32.000Z (over 1 year ago)
- Last Synced: 2025-07-18T06:55:50.292Z (11 months ago)
- Topics: nix, reproducibility, rspatial, rstats
- Language: Nix
- Homepage:
- Size: 21.5 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
## flakefast
The goal of `flakefast` is to provide streamlined access to reproducible
and composable development environments for (spatial) data science projects
based on Nix flakes. The composition of the environments very
much reflects my personal project requirements, so it might not
provide the same value to others as it does to me. However, this
project also reflects very novice eyes on the Nix ecosystem, so in
case you too are learning more about Nix you are invited to have
a look around and provide feedback if you wish.
### Nix installation
To install [Nix](https://nixos.org/download/):
```bash
sh <(curl -L https://nixos.org/nix/install) --no-daemon
```
Then to enable [Flakes](https://nixos.wiki/wiki/Flakes) for your user:
```bash
mkdir -p ~/.config/nix && echo "experimental-features = nix-command flakes" >> ~/.config/nix/nix.conf
```
### Usage
You can investigate what is available via:
```bash
nix flake show "github:goergen95/flakefast"
```
To drop into a shell with a basic installation of R:
```bash
nix develop --unset PATH "github:goergen95/flakefast#r-base"
```
You can also automatically enable a R spatial dev environment directly from
GitHub when `cd`ing into the project directory via [direnv](https://direnv.net/):
```bash
echo "use flake \"github:goergen95/flakefast#r-spatial\"" >> .envrc && direnv allow
```
By adding additional references we can be compose our project environment from
multiple ones:
```bash
echo "use flake \"github:goergen95/flakefast#py-spatial\"" >> .envrc && direnv allow
```
Alternativley, templates can be fetched to the project directory to manually customize
the project environment:
```bash
nix flake init -t "github:goergen95/flakefast#py-spatial"
echo "use flake" >> .envrc && direnv allow
```
### Development
To drop into a purely isolated environment run:
```bash
nix develop --unset PATH
```
### Code of conduct
Please not that participation in this project is governed by a [Code of Conduct](./CODE_OF_CONDUCT.md)
and that by contributing you agree to abide by its terms.