Skip to content

The future of Snowfall Lib #173

Open

Description

@Straffern

Hi,
I noticed @jakehamilton seems to have completely revaamped/removed Snowfall Lib, from his personal config repo.

What does the future of Nix Snowfall Lib look like?

Activity

  1. jakehamilton commented on Mar 16, 2025

    @jakehamilton
    Member

    Hey! Snowfall Lib hasn't really changed much at all in quite some time now and I don't foresee it changing in the future. That said, I always saw Snowfall Lib as a bandage over a problem rather than a solution. Flakes have a lot of problems and Snowfall Lib tried to remedy some of them, though it is far from perfect. If you want to keep using flakes then Snowfall Lib will still be around for you to use. It isn't going anywhere.

    I don't, however, see flakes as the future of Nix considering how they have effectively stalled in a permanent state of limbo. Instead I am more interested in building a better solution.

  2. jakehamilton commented on Mar 16, 2025

    @jakehamilton
    Member

    @vlinkz may have some information to add about SnowflakeOS since that system currently depends on Snowfall Lib. Whether it will in the future is his decision to make 👍

  3. Straffern commented on Mar 17, 2025

    @Straffern
    Author

    I don't, however, see flakes as the future of Nix considering how they have effectively stalled in a permanent state of limbo. Instead I am more interested in building a better solution.

    Can you elaborate on this a bit further?
    Also, is Aux meant to fix these issues you see with Nix Flake?

  4. hackardoX commented on Jul 31, 2025

    @hackardoX

    Hi there, I've been using Snowflake for the past few months, and I believe it's an excellent library and framework. It significantly improved the organization of my Nix configuration compared to before. Even when I used other libraries like flake-utils or flake-parts, I couldn't achieve the same level of organization. Therefore, I'm a bit disappointed to see that the library might be discontinued. I hope SnowflakeOS will take over the repository.

    On the other hand, I've begun exploring alternative projects to replace Snowflake. If I encounter any issues, I'll share my findings.

    Here are a few projects I've come across:

    By any chance, have you come across any other alternatives?

  5. psentee commented on Jul 31, 2025

    @psentee

    One alternative I've been using is https://github.com/nix-community/flakelight

    Pros: adopted by nix-community org, so semi-official; straightforward implementation; extensible; actively maintained

    Cons: using flake's inputs in exported nixos/hm modules isn't possible without disabling some of the automation: nix-community/flakelight#22 (or is it fixed now? Issue is closed as completed now, need to check). IIUC, similarly to that issue, modules' pkgs don't automatically have flake's overlays (which may be a good thing, but cross-importing things manually was a bit annoying). There's a fork that fixes this issue at https://github.com/ratson/conflake/ but it doesn't seem actively developed

    ETA: there's no "proper fix" for that flakelight issue ("proper" as in "inputs arg for nixos/hm modules doing the right thing automagically), but the workaround in nix-community/flakelight#22 (comment) works well and is small enough that I personally consider it fixed.

  6. chris-kruining commented on Aug 6, 2025

    @chris-kruining

    Also, is Aux meant to fix these issues you see with Nix Flake?

    @Straffern are you refering to this repo?

  7. hackardoX commented on Jan 12, 2026

    @hackardoX

    I am commenting after some months with my update, in case it can be useful for others. I ended up using flake-parts instead of Snowfall Lib. I did some research and discovered the dendritic design pattern (maybe a buzz word), that allows to define different modules (darwin, nixos, home-manager, and others) in the same file. This matches more my mental model, where I want to describe features rather than "just" modules.

    If you are interested, check my repo: https://github.com/hackardoX/nix

  8. aleks-sidorenko commented on Feb 20, 2026

    @aleks-sidorenko

    I am commenting after some months with my update, in case it can be useful for others. I ended up using flake-parts instead of Snowfall Lib. I did some research and discovered the dendritic design pattern (maybe a buzz word), that allows to define different modules (darwin, nixos, home-manager, and others) in the same file. This matches more my mental model, where I want to describe features rather than "just" modules.

    If you are interested, check my repo: https://github.com/hackardoX/nix

    All flake-parts based configs I saw so far looks not so orginized as snowfall based. I like the common opiniated structure snowfall provides which makes different people configs look more-or-less common.
    However it is sad it is not actively developed anymore

  9. aquifolly commented on Feb 20, 2026

    @aquifolly

    i would like to note that jake - the sole maintainer of snowfall-lib - also created https://github.com/nilla-nix/nilla

  10. theutz commented on Feb 22, 2026

    @theutz

    @jakehamilton Did an amazing job on snowfall-lib. I don't think I would've been able to get up-and-going with Nix as well as I did without this library. Really amazing stuff!

    But I have had a similar experience to @hackardoX ; the dendritic design pattern with Flake Parts really does finally open up a world of organizing Nix that works perfectly for me.

    And the nice thing is, you can easily organize it using pretty much the exact opinionated project structure in Snowfall Lib if you like. But, since Flake Parts allows you to break down the silos between all the different universes Nix can control, it also saves you from the contortions you'd have to do sometimes around code sharing in Snowflake Lib.

  11. chris-kruining commented on Feb 23, 2026

    @chris-kruining

    I would like to throw my thanks in as well. snowfall did exactly what I wanted when I wanted its easy to implement opinionated structure. I too have different needs now. And as such I've since moved to Clan, which uses flake-parts for structuring modules.
    So @jakehamilton, thank you so much for the effort you put into snowfall, it really lifted my janky initial nix repo to a respectable level!

  12. TafkaMax commented on May 6, 2026

    @TafkaMax

    Ok, so like I understand @jakehamilton is not active in maintaining snowfallorg/lib anymore, but as I understand there are a few active users, so would there be some possibility of finding another "maintainer" per say?

  13. pinage404 commented on May 7, 2026

    @pinage404

    Would it be an option to give this project to the nix-community ?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions