• 0 Posts
  • 16 Comments
Joined 2 years ago
cake
Cake day: June 22nd, 2023

help-circle



  • I appreciate by the tone of your post that you’re trying to be helpful, but:

    1. Use flakes

    Why? What are they? How would I find out about them?

    All I’ve heard about flakes is that it’s an experimental feature that’s still evolving. Shouldn’t I learn the stable system first?

    1. Try to purify everything

    That’s what I’m trying to do. Doing everything the “nix way” but that means none of my previous knowledge is useful. It’s a very steep learning curve.

    1. Fuck the wiki read the code and other peoples configs.

    So you’re telling me I need to reverse engineer everything I want to do with no documentation. Great.

    1. Use home manager early

    Why? What is it ? What problem does it solve?

    check out vimjoyers channel for this seriously he’s great.

    Ok, a tangible resource to go look at. Great, will do. Thanks for that, but most other things you wrote put me off more than help me.

    Nix’s biggest issue is that it has a steep learning curve and throwing more things (flakes / home manager) into the mix just makes it feel more daunting. That’s especially true when you’re saying to ignore what small amount of documentation there is.


  • I’m struggling too. You allude to it, but I think my main problem is that often the only information you can find about configuring a particular package is a tangentially related discourse thread, or a tiny outdated paragraph on the wiki.

    Applications are generally fine. You add them to the list of packages and then you start using them. The problem is services where there’s lots of unique configuration to be done, or programs that have a plug-in architecture. Take something like Home Assistant or Kodi and there’s quite complex nixpkgs code for them. However there’s no documentation the explain what the user is meant to do. Kodi, for example, has a set of kodiPackages plug-in packages. The wiki page gives two methods without information on why to choose one or the other, and just a configuration.nix snippet for each. So far, I’ve managed to get the plug-in files on the disk, but not to get Kodi to use them. To get his far, I’ve needed to read nixpkgs more than documentation.




  • Not high. It tends to result in one of a few things.

    1. They take the fix as offered. Probably it’s a smaller quiet project where the number of PRs is small. That, or very well run.

    2. It remains forever open and gets lost in the masses of other out of date PRs. Maybe a bot comes along and closes it as stale. Biggest group, and these ones just tell me that I’ve got very little chance of getting the maintainer’s attention. I can see that 100s of others have experienced the same fate.

    3. Somebody else finds it useful and adopts it, fighting for it to go in. Sometimes that someone is the maintainer. As you say, it can be inspiration for a rewrite of my contribution. That’s fine by me. Whatever works.

    4. The maintainer makes a bunch of rework demands leading to rejection, or it gets rejected straight off. “My way or the highway” is always going to be highway. I offered a small piece of help, and if it’s not wanted I’ll happily go away.

    Maybe 20% get in, but it depends on so many things.


  • Honestly, I run and gun. I make the change I want, and submit a merge request. I then move on. It’s then up to the maintainer to accept or reject it.

    I’m not going to debate it. I’m not going to rework it over the course of months to make it perfect in the maintainer’s eyes. I don’t care enough about it. I’ve solved my problem. I’m just sharing it for others.

    The things I submit are normally big fixes with the smallest possible code change, not refactorings to solve an underlying problem.