!lZLfSUtSOVjwYTmPbU:nixos.org

nixpkgs-update

188 Members
Keeping nixpkgs up to date. r-ryantm bot. https://github.com/ryantm/nixpkgs-update and https://github.com/nix-community/infra/blob/master/build02/nixpkgs-update.nix57 Servers

Load older messages


SenderMessageTime
18 Jan 2026
@marcel:envs.netMarcel left the room.17:48:20
19 Jan 2026
@whispers:catgirl.cloudwhispers (it/fae) joined the room.21:46:55
22 Jan 2026
@thefossguy:matrix.orgPratham Patel joined the room.05:59:10
@thefossguy:matrix.orgPratham Patel

Is it possible to tell the auto-update bot to group commits for a specific set of packages into a single PR? At the moment, auto-updates for COSMIC packages are turned off and I "manually" auto-update them with the following command on my local machine and then creating a PR:

nix-shell maintainers/scripts/update.nix \
    --argstr commit true \
    --argstr keep-going true \
    --argstr max-workers 1 \
    --argstr skip-prompt true \
    --arg predicate '(path: pkg: let lib = import <nixpkgs/lib>; in lib.lists.elem lib.teams.cosmic (pkg.meta.teams or []))'

I was wondering if this could be automated in such a way that all package update commits are in a single PR. This is because upstream tags new versions for all stable packages at once, meaning we update all stable packages with each new release. But the motivating factor for automating this is that upstream is switching to weekly releases. I'd much rather spend my time on reviewing and let the auto-update bot handle updates, if possible.

I have given this some thought and am thinking of creating these two files in nixpkgs:

# pkgs/by-name/co/cosmic-packages-upgrade-script/package.nix
{
  stdenvNoCC,
  writeShellScript,
  lib,
}:

stdenvNoCC.mkDerivation {
  name = "cosmic-packages-upgrade-script";

  passthru.updateScript = import ./update-script.nix { inherit writeShellScript; };

  meta = {
    description = "A package to auto-upgrade all COSMIC packages maintained by the nixpkgs COSMIC team";
    license = lib.licenses.mit;
    teams = [ lib.teams.cosmic ];
    platforms = lib.platforms.linux;
  };
}
# pkgs/by-name/co/cosmic-packages-upgrade-script/update-script.nix
{ writeShellScript }:

writeShellScript "cosmic-packages-upgrade-script" ''
  cd "$(git rev-parse --show-toplevel)" || exit 1
  exec nix-shell maintainers/scripts/update.nix \
    --argstr commit true \
    --argstr keep-going true \
    --argstr max-workers 1 \
    --argstr skip-prompt true \
    --arg predicate '(path: pkg: let lib = import <nixpkgs/lib>; in lib.lists.elem lib.teams.cosmic (pkg.meta.teams or []))'
''

Is this cursed? Would it even work? What's the recommended method here?

06:09:00
@gus:gu5.orgGus left the room.15:35:27
23 Jan 2026
@nivayu:matrix.orgNivayu joined the room.16:03:38
19 Sep 2023
@evils:nixos.devevils joined the room.16:15:20
@ryantm:matrix.orgryantm raitobezarius: No, not really. It's been an idea for a long time to have grouped package updates like that, but it hasn't been implemented. 16:52:21
@evils:nixos.devevilshi, second link in the channel topic is dead19:21:58
@evils:nixos.devevilsis there a way to see what packages the bot tried to update but failed on?19:22:23
@artturin:matrix.orgArtturin
In reply to @evils:nixos.dev
is there a way to see what packages the bot tried to update but failed on?
https://r.ryantm.com/log/
19:23:49
@artturin:matrix.orgArtturinhttps://ryantm.github.io/nixpkgs-update/nixpkgs-maintainer-faq/#nixpkgs-maintainer-faq19:23:56
@artturin:matrix.orgArtturin * from https://ryantm.github.io/nixpkgs-update/nixpkgs-maintainer-faq/#nixpkgs-maintainer-faq19:23:58
@evils:nixos.devevilsimage.png
Download image.png
19:24:43
@evils:nixos.devevilsoof that's a subtle link underline19:24:50
@evils:nixos.devevils(i was looking at the page :)19:25:02
@artturin:matrix.orgArtturinyeah19:26:15
@evils:nixos.devevilsok, why do all KiCad update attempts end in "Do not update GNOME during a release cycle"?19:30:21
@ryantm:matrix.orgryantm
19:44:27
@ryantm:matrix.orgryantm * [ryantm@replit1:~/p/nixpkgs]$ EDITOR=echo nix edit -f . kicad /home/ryantm/p/nixpkgs/pkgs/applications/science/electronics/kicad/default.nix [ryantm@replit1:~/p/nixpkgs]$ cat /home/ryantm/p/nixpkgs/pkgs/applications/science/electronics/kicad/default.nix | grep gnome , gnome "--prefix XDG_DATA_DIRS : ${gnome.adwaita-icon-theme}/share"19:44:32
@artturin:matrix.orgArtturinthe check here is wrong https://github.com/ryantm/nixpkgs-update/blob/8fedf8f6f29280578e335bf4483c9f88d4bcdbaa/src/Skiplist.hs#L15119:45:39
@artturin:matrix.orgArtturinjust a naive grep19:45:49
@artturin:matrix.orgArtturin maybe a better way would be to check for teams.gnome.members 19:47:29
@artturin:matrix.orgArtturinstill has false positives but way less19:47:37
@ryantm:matrix.orgryantmhttps://github.com/ryantm/nixpkgs-update/commit/2fda8bcb73776c3e11c0155fa15e138a71e1f18919:49:37
@evils:nixos.devevils
In reply to @artturin:matrix.org
the check here is wrong https://github.com/ryantm/nixpkgs-update/blob/8fedf8f6f29280578e335bf4483c9f88d4bcdbaa/src/Skiplist.hs#L151
huh, i see kicad a bit further down there, what does binariesStickAround imply?
19:54:51
@artturin:matrix.orgArtturin
In reply to @evils:nixos.dev
huh, i see kicad a bit further down there, what does binariesStickAround imply?
https://github.com/ryantm/nixpkgs-update/commit/7ff121794ec221b4378b1dfb2032fe4e65fc216d
19:59:25
@artturin:matrix.orgArtturinthe commands don't properly exit19:59:51
@artturin:matrix.orgArtturin * the binaries don't properly exit20:00:01
@evils:nixos.devevilsah, https://gitlab.com/kicad/code/kicad/-/issues/695720:00:39

Show newer messages


Back to Room ListRoom Version: 9