[PATCH] gnu: tup: Update to 0.7.11.

  • Done
  • quality assurance status badge
One participant
  • Morgan.J.Smith
Submitted by
Morgan.J.Smith wrote on 1 Jan 2022 05:14
(address . guix-patches@gnu.org)(name . Morgan Smith)(address . Morgan.J.Smith@outlook.com)
From: Morgan Smith <Morgan.J.Smith@outlook.com>

* gnu/packages/build-tools.scm (tup): Update to 0.7.11.
[phases]<configure,build>: Force it to use fuse instead of fuse3

There is probably a cleaner way to do that format thingy. I just can't be asked to figure that out right now, sorry. This package gave me to much grief to go the extra mile :P

Wanted to play with this as it seems cool but I kept getting this error when running it:

Toggle quote (3 lines)
> setpgid: Operation not permitted
> tup error: Unable to set process group for tup's subprocesses.

So then I updated it to 0.7.11 (changed fuse to fuse-3), built it just fine, and got this error instead when running it:

Toggle quote (2 lines)
> fuse: failed to exec fusermount3: No such file or directory

I tried pretty hard to fix it but I couldn't figure it out. It's pretty darn cryptic. I can't figure out where it's trying to call it from. So I just built it with fuse instead of fuse3 and now everything works great. No errors at all.

gnu/packages/build-tools.scm | 9 +++++----
1 file changed, 5 insertions(+), 4 deletions(-)

Toggle diff (39 lines)
diff --git a/gnu/packages/build-tools.scm b/gnu/packages/build-tools.scm
index 9d3fd5171e..1838e9ce7a 100644
--- a/gnu/packages/build-tools.scm
+++ b/gnu/packages/build-tools.scm
@@ -409,14 +409,14 @@ (define-public premake5
(define-public tup
(name "tup")
- (version "0.7.9")
+ (version "0.7.11")
(source (origin
(method url-fetch)
(uri (string-append "http://gittup.org/tup/releases/tup-v"
version ".tar.gz"))
- "0gnd2598xqgwihdkfkx7qn0q6p4n7npam1fy83mp7s04zwj99syc"))
+ "1157qfnhjakm3h07y7h38lrjw5650gkif34k30bnrsypmwl5xyzb"))
(patches (search-patches "tup-unbundle-dependencies.patch"))
(modules '((guix build utils)))
@@ -439,12 +439,13 @@ (define-public tup
(("`git describe`") ,version))
(with-output-to-file "tup.config"
(lambda _
- (format #t "CONFIG_TUP_USE_SYSTEM_SQLITE=y~%")))
- #t))
+ ;; Use fuse instead of fuse3 (won't run with fuse3 for some reason)
(delete 'check)
(replace 'build
(lambda _
;; Based on bootstrap-nofuse.sh, but with a detour to patch-shebang.
+ (setenv "TUP_SERVER" "fuse") ;; Use fuse instead of fuse3
(invoke "./build.sh")
(invoke "./build/tup" "init")
(invoke "./build/tup" "generate" "--verbose" "build-nofuse.sh")
Morgan Smith wrote on 1 Jan 2022 19:56
(address . 52927@debbugs.gnu.org)
Morgan.J.Smith@outlook.com writes:
Toggle quote (2 lines)
>> fuse: failed to exec fusermount3: No such file or directory

Well it has been a year so I thought I'd come back to this. I figured
it out. It needs to run fusermount from /run/setuid-programs because it
needs those permissions I guess. So running this program depends on the
user's system configuration which I don't think is a good thing (and
probably translates badly on foreign distros.)

If I could get someone more knowledgeable then me to weigh in here that
would be great because I have no clue how to proceed.

If I install fuse-3 alongside tup built with fuse-3 then I get the
following error. If fuse-3 is installed as a setuid program it works
perfectly. The only reason everything currently works is because we
install fuse by default as a setuid program.

Toggle quote (1 lines)
> fusermount3: mount failed: Operation not permitted
Morgan Smith wrote on 14 Jun 2023 20:48
control message for bug #52927
(address . control@debbugs.gnu.org)
close 52927

Was fixed by commit 9c1697020912ac24ff6be7eb6591314fdb74fc07
Your comment

This issue is archived.

To comment on this conversation send an email to 52927@debbugs.gnu.org

To respond to this issue using the mumi CLI, first switch to it
mumi current 52927
Then, you may apply the latest patchset in this issue (with sign off)
mumi am -- -s
Or, compose a reply to this issue
mumi compose
Or, send patches to this issue
mumi send-email *.patch