!djTaTBQyWEPRQxrPTb:nixos.org

Nixpkgs Architecture Team

227 Members
https://github.com/nixpkgs-architecture, weekly public meetings on Wednesday 15:00-16:00 UTC at https://meet.jit.si/nixpkgs-architecture53 Servers

Load older messages


SenderMessageTime
13 Jul 2022
@sandro:supersandro.deSandro
In reply to @kevincox:matrix.org

Also for overrides I think we can probably handle this basically the same we do today in all-packages.nix for now. We can think about changing those as a different project. For now it could look something like:

# foo.nix
{pkgs}: pkgs.callPackage foo/impl.nix { python = pkgs.python27 }

That isn't the prettiest but allows us to do overrides and maintains the current API. Then I think we can probably clean it up as a separate effort if we wanted too. Unless I am also missing a way that merging both projects returns a better result here.

That is a really bad example because python 2 to 3 had many breaking changes in python itself and in many libraries.
13:54:30
@kevincox:matrix.orgkevincox
In reply to @sandro:supersandro.de
That is a really bad example because python 2 to 3 had many breaking changes in python itself and in many libraries.
I don't follow how the breaking changes is bad in my example? You mean it would be better to be an example like libfoo = libfoo.override { withX = false} or something?
13:56:34
@sandro:supersandro.deSandroI would recommend something that would actually work out of the box right now, just with more code. Idk. Replace python 3.10 with 3.9 or only change a minor version or something like that13:58:26
@sandro:supersandro.deSandroOr compile a go program with an older go version 13:58:57
@sandro:supersandro.deSandroBecause that wouldn't require much extra work and leaves less room for side discussions. Bringing python 2 brings a lot of side discussions on the board and the python does not want to maintain an extra package set for python 2 which is only possible with old versions of most things.14:00:30
@infinisil:matrix.orginfinisil Sandro: I think that was only an example. More generically the question is "If all-packages.nix goes away, what to do with all these argument overrides in all-packages.nix" 14:03:29
@sandro:supersandro.deSandroYeah I know, I would suggest to use uncontroversial examples without python 2.714:52:19
@infinisil:matrix.orginfinisil@room First meeting in 5 minutes at https://meet.jit.si/nixpkgs-architecture, anybody is free to join, meeting agenda and notes in https://pad.lassul.us/uIi7xeSJTW6LJUEHulZgVQ :)14:55:10
@chris:mkaito.netmkaitobe there in 5, just brewing some coffee14:55:45
@rick:matrix.ciphernetics.nlRick (Mindavi)Might lurk for a bit :)14:59:28
@yorik.sar:matrix.orgyorik.sar infinisil: Good job driving this meeting! 16:03:36
@infinisil:matrix.orginfinisilThanks for joining everybody! I think this is starting out great, thanks for all the feedback :D16:03:40
@qyliss:fairydust.spaceAlyssa Rossyeah thanks infinisil :)16:04:00
@infinisil:matrix.orginfinisilMeeting notes uploaded here: https://github.com/nixpkgs-architecture/meetings/blob/master/2022-07-13.md, and the recording is here: https://www.dropbox.com/s/4sbfxcjzlnb85qc/nixpkgs-architecture%20on%202022-07-13%2016-02.mp4?dl=0 (for now, later to be uploaded to youtube)16:05:43
@yorik.sar:matrix.orgyorik.sarBy the way, I think that threads in Matrix, even if the were not in beta, share pretty much all downsides of plain Matrix, adding very little benefit. They are still hard to follow (just like the channel itself), even if focused on one topic.16:06:46
@yorik.sar:matrix.orgyorik.sarI think that messengers that focus more on topics like Zulip or Twist (or Matrix from the future?) should be better at this. But for now we should probably use different tools.16:08:50
@qyliss:fairydust.spaceAlyssa Rossterrible idea: Discourse <-> Matrix threads bridge :P16:09:19
@yorik.sar:matrix.orgyorik.sarhttps://meta.discourse.org/t/discourse-chat-integration/66522 - it seems to support threaded replies for Slack...16:11:11
@chris:mkaito.netmkaitoHow about no 😛16:39:19
@infinisil:matrix.orginfinisil I like the article ash (it/its) 🏳️‍⚧️ mentioned: http://new-compass.net/articles/against-consensus-dissensus . It's main thoughts are that basing decisions on strict consensus is problematic 16:55:06
@infinisil:matrix.orginfinisilInstead the article suggests to try to first reach consensus, but if it can't be reached, do a vote (e.g. 2/3 majority)16:55:29
@infinisil:matrix.orginfinisil

Here's a quote from the article:

  1. A proposal is made, the group tries to reach consensus. Modifications may be made to the proposal. Consensus may be reached, or it may be decided that no consensus is necessary in this case – a few members of the group can implement the decision without bothering the others.

  2. If, after reasonable attempts by all sides to accommodate each other have been made, no consensus is reached, a vote is taken using the agreed voting method. The facilitator will decide the right moment for the vote. The right moment can be the subject of debate, and people may raise objections, but if you have a facilitator who can be held accountable then they need to be trusted to make the final decision. Making a group decision on how to make a group decision when in the middle of a contentious meeting is not a viable option.

  3. The group considers how those who lost the vote can be accommodated – this may have been dealt with already in the stage 1 discussions but it is often worth raising again after the vote.

  4. The debate between differing views continues over the long term, and decisions can always be re-considered if appropriate.

16:56:01
@infinisil:matrix.orginfinisilThis sounds very reasonable and I think it's a good idea to adapt the workings of this team to this strategy16:56:57
@sandro:supersandro.deSandro
In reply to @infinisil:matrix.org
Instead the article suggests to try to first reach consensus, but if it can't be reached, do a vote (e.g. 2/3 majority)
Isn't that how it always works?
17:07:51
@infinisil:matrix.orginfinisil Sandro: I think the difference is that in this case a vote is only used as a last-resort option when consensus fails, whereas usually a vote is used as the default mechanism 17:09:36
@rick:matrix.ciphernetics.nlRick (Mindavi)Consensus should be the goal and voting is a type of making a compromise when you follow that17:11:08
@sandro:supersandro.deSandroto much bureaucracy for me17:14:29
@infinisil:matrix.orginfinisilA necessary evil for such a team!17:17:14
@sandro:supersandro.deSandroyeah, maybe. Coudln't join the meeting because I had work to do17:18:34
@infinisil:matrix.orginfinisilI would've liked to keep voting out of this, because it comes with a lot of problems, but I guess it's fine if it's only used as a last-resort17:19:03

Show newer messages


Back to Room ListRoom Version: 9