Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/loicreynier/igloo

Configuration of my systems build with an (overengineered) Nix Flake
https://github.com/loicreynier/igloo

configuration declarative dotfiles flake-parts home-manager-config nix nix-dotfiles nix-flake nixos nixos-configuration wsl

Last synced: 2 months ago
JSON representation

Configuration of my systems build with an (overengineered) Nix Flake

Awesome Lists containing this project

README

        

:snowflake:


NixOS
nixpkgs
Home Manager

## About

Home baked configurations for all my systems and user environments.
Using [Nix], [flakes], [flake parts] and [Home Manager].
Also contains raw configuration files and scripts for ~~cringe~~ non-Nix systems.

[Nix]: https://nixos.org
[flakes]: https://nixos.wiki/wiki/Flakes
[flake parts]: https://github.com/hercules-ci/flake-parts
[Home Manager]: https://github.com/nix-community/home-manager

## Layout

- [`bin`](../bin): raw executable/script files (not generated using Nix)
- [`config`](../config): raw configuration files (not generated using Nix)
- [`flake.nix`](../flake.nix): Entry point of the Igloo
- [`nix`](../nix): Nix part of Igloo
- [`flake`](../flake): Individual parts of the flake, powered by flake parts
- [`homes`](../homes): Home Manager/user environment configuration
- [`hosts`](../hosts): NixOS/system configurations
- [`modules`](../modules): Configuration modules
- [`igloo`](../modules/igloo): Home & system modularized configurations relative to Igloo
- [`home-manager`](../modules/home-manager): Home Manager custom modules
- [`nixos`](../modules/nixos): Nix OS custom modules
- [`templates`](../templates): Nix flake templates
- [`secrets`](../secrets): `age`-encrypted secrets such as passwords and private keys
- [`unix`](../unix): Linux/Unix related fluff
- [`windows`](../windows): Windows related fluff
such as setup AutoHotkey and PowerShell scripts

## Credits & References

### System Configurations

> Igloo contains code ~~stolen~~ inspired from these configurations

[@NotAShelf](https://github.com/NotAShelf/nyx) -
[@ViperML](https://github.com/viperML/dotfiles) -
[@fufexan](https://github.com/fufexan/dotfiles) -
[@sioodmy](https://github.com/sioodmy/dotfiles) -
[@zimbatm](https://github.com/zimbatm/home) -
[@nmasur](https://github.com/nmasur/dotfiles)

### Software employed

> Software used to build Igloo and used within my systems

Nix stuff

- [Nix Flakes](https://nixos.wiki/wiki/Flakes)
to structure the configurations
- [Flake Parts](https://github.com/hercules-ci/flake-parts)
to modularize even more the flake structure
- [Home Manager](https://github.com/nix-community/home-manager)
to manage the user environment
- [`pre-commit-hooks.nix`](https://github.com/cachix/pre-commit-hooks.nix)
to integrate [pre-commit](https://pre-commit.com) hooks in the Nix flake
- [NixOS on WSL](https://github.com/nix-community/NixOS-WSL)
for running NixOS on WSL
- [comma](https://github.com/nix-community/comma)
and [`nix-index` database](https://github.com/nix-community/nix-index-database)
to run software without installing it
- ~~[NixVim](https://github.com/nix-community/nixvim)
to configure Neovim using Nix~~
- [NixNeovimPlugins](https://github.com/nixneovim/nixneovimplugins)
to use Neovim plugins not available yet in `nixpkgs`
- [NixOS Visual Studio Code `server-env-setup`](https://github.com/sonowz/vscode-remote-wsl-nixos)
to connect to VS Code server running inside NixOS-WSL
- [`agenix`](https://github.com/ryantm/agenix)
from managing `age`-encrypted secrets from NixOS and Home Manager

Shell environment

- [direnv](https://direnv.net)
for loading/deloading development environments depending on the current directory
- [Starship](https://starship.rs)
because having a beautiful prompt is vital
- [fzf](https://github.com/junegunn/fzf)
because fuzzy finders change your life
- [zoxide](https://github.com/ajeetdsouza/zoxide)
because `cd`-ing is boring and `z` is a fast boy
- [pet](https://github.com/knqyf263/pet)
to remember the juiciest commands
- [Atuin](https://atuin.sh)
to have a shell history on steroids

Misc

- [Sourcegraph](https://sourcegraph.com)
to scavenge the entire web for Nix snippets using `file:\.nix `

---


Back to the Top