On 2021-11-17, Vagrant Cascadian wrote: > On 2021-11-17, Ludovic Courtès wrote: >> Vagrant Cascadian skribis: >> >>> Ideally, "guix lint" would be run and issues fixed before applying >>> patches ... ! ... >>> Is it worth adding an inexpensive check to etc/git/pre-push that also >>> checks for file-length and fails to push due to this issue potentially >>> breaking "make dist"? ... > This basically mimics the check that guix-lint does: > > for p in $(find gnu/packages/patches -type f ) ; do > if [ "$(echo guix-2.0.0rc3-10000-1234567890/${p} | wc -c)" -ge "99" ] > then > echo $p > exit 1 > fi > done > > Would something like that be cheap enough to consider adding to > etc/git/pre-push? Are "find" and "wc" reasonable dependencies to assume > they are available? > > Obviously, have to wait until they are all fixed, some of which probably > require going through core-updates... or start with a more conservative > but still useful length-check. Another strategy would be to reduce the overly cautious lint check: diff --git a/guix/lint.scm b/guix/lint.scm index ac2e7b3841..e795c466b1 100644 --- a/guix/lint.scm +++ b/guix/lint.scm @@ -957,7 +957,7 @@ (define (starts-with-package-name? file-name) ;; Check whether we're reaching tar's maximum file name length. (let ((prefix (string-length (%distro-directory))) - (margin (string-length "guix-2.0.0rc3-10000-1234567890/")) + (margin (string-length "guix-2.0.0rc3-10000-12345678/")) (max 99)) (filter-map (match-lambda ((? string? patch) That leaves only two packages on master in violation of the lint check, and those are both updatable directly on master, and "make dist" still works with those two packages as they are, in my experience. I think that's fairly safe to do, actually, as "make dist" on core-updates-frozen currently produces a tarball prefixed with: guix-1.3.0.10380-fe257/ If guix keeps bumping it's version into the double-digits, an rc-version, and it surpasses 99999 commits, and an extra character for the git commit hash, this still leaves considerable wiggle-room: guix-10.0.0rc0-123456-abcde0/ vs. guix-2.0.0rc3-10000-12345678/ So, I guess I'm leaning towards making the guix lint check a little more lenient. Thoughts? live well, vagrant