IRC channel logs

2023-01-21.log

back to list of logs

<two[m]>hi
<two[m]>does anyone have a ghc-gi-gtk package?
<lechner>apteryx / can guile-build-system install executables?
<lechner>patch-shebangs does not like -S after env? no binary for interpreter `-S' found in $PATH
<mirai>lechner: what's the shebang here
<mirai>you might be hitting the pesky case of "only 2 arguments can be reliably used in shebangs"
<lechner>#!/usr/bin/env -S guile --no-auto-compile -e main -s
<mirai>:)))))
<lechner>is that too much?
<mirai>patch-shebangs might need to be patched
<mirai>lechner: file a bug report
<mirai>imo it should be supported
<lechner>mirai: thanks i willmy bigger issue is that i
<lechner>my bigger issue is, however, that i cannot install this script
<lechner>the copy-build-system strips the executable bot
<lechner>bit
<mirai>I don't think it does?
<mirai>I've used it recently and had to add a phase that strips the exec bit from some files
<mirai>idk if git preserves exec bits
<mirai>but zip does
<lechner>i believe Git does
<mirai>have you tried adding a phase to set the exec bit
<mirai>add-after 'install
<lechner>did you have to use a gexp in the install-plan (which is missing here) https://github.com/guix-mirror/guix/blob/master/gnu/packages/curl.scm#L356
<mirai> https://paste.centos.org/view/cb5f2a7e
<lechner>mirai / thanks! one does not need a #:install-plan ?
<mirai>from the looks of it
<mirai>I think it's there for convenience
<Fare>Has anyone tried sxmo with guix?
<lechner>Fare / no, but it looks good
<lechner>mirai / i see now; you had an explicit 'install phase with copy-recursively. that probably did -p or so
<Fare>I see various sxmo packages in guix, but no recipe to assemble them together instead of the %desktop-services
<lechner>mirai / does this look like a good way to change the permissions? it does not work http://paste.debian.net/1267987
<lechner>sorry, it did work. poor vision. small screen
<apteryx>lechner: you should really use guile-build-system, copy-build-system is mostly for non-functional files
<apteryx>it doesn't support cross-compilation for one
<apteryx>lechner: I've struggled with guile shebangs too
<apteryx>let me find one that works
<apteryx>lechner: with guile you shouldn't have a use for env -S, you can use it's meta switch
<apteryx>but if you insist on it, it'd look like: "#!/usr/bin/env -S guile --no-auto-compile -e main\n!#'
<apteryx>with the arguments of your choices
<apteryx>the !# on the second line is required for some reason
<lechner>apteryx / how may i install executables with guile-build-system, please?
<apteryx>something that goes under the #$output/bin ?
<lechner>i don't have any guile modules. it's just a single script (although i probably will split it into modules). why should i use the guile-build-system, please?
<lechner>also, does the Guile meta switch work with 'env' please?
<apteryx>the guile meta switch is a clever trick to pass as many arguments as you want to guile without requiring somethnig else like env -S
<lechner>i have only used guile-build-system with #:source-directory
<apteryx>lechner: you can always add extra phases to do something custom, such as symlink your main script file to #$output/bin/your-script
<lechner>can i make my main script file function like a module, too?
<apteryx>I think so!
<lechner>also, should my executable show up in PATH after guix shell -f guix.scm?
<mirai>lechner: looks "ok" to me
<mirai>but see apteryx answer
<lechner>apteryx / using the meta switch with env yields this error /usr/bin/env: ‘guile \\’: No such file or directory /usr/bin/env: use -[v]S to pass options in shebang lines
<apteryx>rekado: I'm really having a hard time to PXE boot an hydra-guix-129. this is not fun
<apteryx>*on
<apteryx>if you use env -S don't use the meta switch, use what I suggested above
<apteryx>lechner: ^
<char[m]>If I install a package that has search-paths, those variables should be set correct?
<podiki[m]1>you need both package that uses search-paths and a package that puts something in that search path
<podiki[m]1>e.g. search path of 'lib/something' defined by <pkg> needs also a <pkg-a> that puts something in its #$output/lib/something; both packages in the same profile
<char[m]>Oh. Can I do both in the same package?
<podiki[m]1>not sure I understand, a search-path is so that some package can find files (like plugins) from other packages
<podiki[m]1>otherwise it can just look in its own output (may need patching if i something looks at e.g. /usr/lib/plugins)
<podiki[m]1>patch to look in #$output/lib/plugins, for instance
<char[m]>I'm just trying to automatically set an environment variable in profiles where this package exist
<podiki[m]1>what package? or what env variable, needed to do what?
<char[m]>It is a guix command line extension to the variable is GUIX_EXTENSIONS_PATH. There is the $GUIX_EXTENSIONS_PATH scheme variable, but the files part of that doesn't make a whole lot of sense to me.
<podiki[m]1>hmm..that one might be a bit different, not sure
<podiki[m]1>but I think if you have a package that puts something in its output's share/guix/extensions directory, that env will be set
<podiki[m]1> https://issues.guix.gnu.org/57317 is the origin of this
<tasty-sandwich>"[PATCH 0/2] Implicitly set GUIX_EXTENSIONS_PATH in profiles." https://issues.guix.gnu.org/57317
<podiki[m]1>so I believe that is correct, you should be able to install a package that has a guix extension and the env will be properly set and guix will find it, no need to manually set the env
<podiki[m]1>that's the idea anyway
<podiki[m]1>(so don't install "guix" as a package, that is a Bad Idea; while normally yes you need to install both the package defining the search-path and something populating it)
<char[m]>Okay. I'll try that. Thanks podiki
<podiki[m]1>welcome!
<vagrantc>with pyproject-build-system, how do i see what exact command it is running when it calls pytest?
<vagrantc>ah, it shows me when it spits out an exception, at least
<apteryx>pyproject-build-system.scm ;-)
<apteryx>but really it just adds -vv by default, I think
<apteryx>and you can add more yourself via #:test-flags
<vagrantc>call me crazy, but it would seem useful for it to actually display the command it is running :)
<vagrantc>in the build log
<vagrantc>yeah, apparently i've got one that apparently claims that you can pass multiple -m arguments, but it only takes the last one
<vagrantc>or rather, it appears to ignore the last one
<vagrantc>a bunch of tests that rely on hitting URLs and whatnot
<apteryx>are you sure you're not looking for -k "not that-test and not that-one-too" ?
<vagrantc>well, that's not what upstream documentation says to do ... but ...
<apteryx>I think -m is for tags?
<vagrantc>it uses tags to disable external and sample tests
<apteryx>ah yes; you can't pass the -m multiple times, but you can combine the expressions with logic operators
<vagrantc>although, that said, one of them is actually a git submodule ... i can probably pull that in
<vagrantc>oh!
<apteryx>pytest --help shows an example: -m 'mark1 and not mark2'
<vagrantc>will try it
<vagrantc>although i don't know the licensing on the submodule files ... so ... who knows
<vagrantc>i'd like to try to at least disable both and then explore the submodule thing...
<vagrantc>seems like -m "not external and not samples" worked
<vagrantc>er, not.
<vagrantc>lazy me wants to replace all the samples with external ...
<vagrantc>i am not successfully cargo-culting this time ... https://paste.debian.net/1268004/
<vagrantc>Invalid keyword: #<gexp (modify-phases %standard-phases (add-before (quote check) (quote treat-samples-as-external) (lambda _ (substitute* "tests/test_page.py" (("pytest.mark.samples") "pytest.mark.external"))))) /home/vagrant/src/guix/gnu/packages/pdf.scm:1283:6 7fd628ed7ea0>
<vagrantc>aha.
<vagrantc>seems like i just need to figure out how to download the samples ...
<vagrantc>well, enough for now...
<attila_lendvai>what is the guix equivalent of using a /etc/tmpfiles.d/disable-usb-wake.conf file to write a string into /proc/acpi/wakeup ?
<attila_lendvai>FTR, if your computer wakes up by itself immediately after putting it to suspend: https://forums.linuxmint.com/viewtopic.php?f=42&t=312953
<attila_lendvai>ACTION feels the urge to refactor extra-special-file to be more general
<attila_lendvai>although, i find its naming rather unfortunate...
<PurpleSym>Could someone add wip-haskell to Cuirass, so we can get it into a mergable shape?
<mirai>attila_lendvai: mcron
<attila_lendvai>mirai, not ideal... unless there are single-shot jobs, but i can't find any sign of that in the manual.
<mirai>I think there's a way to make a mcron job run only once
<mirai>it was described in either guix or mcron manual
<mirai>attila_lendvai: extra-special-file shouldn't be obsoleted, it can be used for arbitrary symlinking
<mirai>a tmpfiles-service-type sounds a good idea though (assuming you want to reimplement systemd-tmpfiles)
<mirai>or if that component is "standalone", maybe it can be reused here
<attila_lendvai>mirai, the best would be to *extend* extra-special-file. it's just that i don't like that name, especially once it can create direcoties and other features.
<webantipode>The container examples for graphical applications don't work for me -- I get 'Connection refused' errors'
<webantipode>e.g. this one: https://paste.debian.net/1268041/
<webantipode>(from the manual)
<webantipode>I think it's missing a --expose=/tmp/.X11-unix
<webantipode>Adding that seems to fix things.
<webantipode>(bug report later)
<gnucode>howdy guix!
<gnucode>so my linode is still not working properly. I am able to boot the linode in "rescue mode". Anyone have a guide for how to mount guix system filesystem, such that I can run guix system roll-back ?
<katco>fyi, i think the cuirass manual is missing? https://guix.gnu.org/cuirass/manual/
<gnucode>katco: I didn't know it had a manual. That's cool.
<katco>last time archive.org saw it was 2022-10-03
<normeo>something wrong with savannah? i get random packet loss and git tls errors
<normeo>gnucode: mount and chroot normally?
<gnucode>normeo: I guess that's beyond me. I just went ahead and rebuilt. starting all over. But guix makes that fairly easy.
<normeo>gnucode: iirc linode has finnix as rescue distro
<normeo>so just figure out how the root fs volume is presented into the linode, usually it's just /dev/sda
<normeo>and then mount that
<gnucode>normeo I already whiped everything. finnix totally worked, I could totally access the /dev/sda. I just figured it would be faster if I started all over, since I know how to do that.
<dryya>Hey there, I'm trying to package a rust app but am running into an issue - the cargo build system is complaining about a "reserved file name Cargo.toml.orig in package source"
<dryya>Has anyone run into this issue before? I'm not quite sure how to debug it because the build is succeeding and, as far as I can tell, there's supposed to be a cargo.toml.orig file there
<bdju>is the yt-dlp package in guix really old? like from 2021?
<bdju>or maybe the --version output is just wrong
<gurjeet>> or maybe the --version output is just wrong
<gurjeet>I doubt that.
<dryya>I have ❯ yt-dlp --version
<dryya>2023.01.06y
<dryya>so I think you have an outdated package definition?
<bdju>not sure how this is possible
<bdju>it's showing me 2021.10.10 but I just have the regular guix one, I even just did another guix install of it and same thing. and it's in my manifest file
<bdju>a guix search shows the 2023 version but why do I get this old version output
<bdju>oh my god I figured it out. I had a binary of it in ~/bin
<bdju>maybe from before it was packaged
<bdju>removed it and it's all good now
<dryya>haha that's definitely happened to me before
<dryya>by the way, I still would appreciate any insight on cargo-build-system and how it handles "cargo package"
<dryya>I just tried downloading/building/packaging a crate in a FHS container and get the same:
<dryya>Finished dev [unoptimized + debuginfo] target(s) in 26.60s
<dryya>$ cargo package
<dryya>error: invalid inclusion of reserved file name Cargo.toml.orig in package source
<dryya>but I can't seem to find anything in the (guix build-system cargo) module which would address that?
<apteryx>hello! does 'cheese' work for you? here it returns a bizarrely colored live video stream
<apteryx>and this is without any effect applied
<dryya>apteryx: just installed to check, and it's the same for me
<apteryx>seems nix fixed it back in 2017: https://github.com/NixOS/nixpkgs/issues/11634 ^^'
<acrow>apteryx: cheese works for me after adjusting preferences for the video mode to, for me, 640x480. The default was asking too much for the provided hardware.
<acrow>apteryx: After you set those lower video/photo resolutions the first time it works like a charm. Of course YMMV. :)
<apteryx>but the same camera does 720p fine in jami
<acrow>cheese apparently prefers more mature hardware ;)
<gnucode>hey guix!
<KarlJoad>Could someone look at bug report #60661? It is a small documentation patch I prepared almost two weeks ago. I would appreciate feedback to get it merged.
<tasty-sandwich>"[DOCUMENTATION] doc: Example of selecting package output with lisp" https://issues.guix.gnu.org/60661
<normeo>is /run/user supposed to exist in guix 1.4
<nckx>Hi normeo. Isn't that like asking whether ~/.config/gimp should exist on Debian? I don't have /run/user but suspect somebody running elogind will.
<nckx>It should not be relied upon IMO.
<mirai>normeo: what exactly is the issue you're having
<nckx>apteryx: You asked for the errors IIRC, here are the 2 produced by a scrub:
<nckx>[5454706.898553] BTRFS warning (device sdk2): checksum/header error at logical 30457856 on dev /dev/sdk2, physical 146194432: metadata leaf (level 0) in tree 257 [5454706.912754] BTRFS warning (device sdk2): checksum/header error at logical 30457856 on dev /dev/sdk2, physical 146194432: metadata leaf (level 0) in tree 257
<nckx>(A scrub is a guy who can't get no love from me.)
<nckx>Night, Guix.
<vagrantc>/20/20
<normeo>mirai: complaints at login that $XDG_RUNTIME_DIR doesn't exist
<normeo>i might have screwed up something during initial install because proxmox console mapped keys weirdly
<normeo>manual says "install elogind or system" but what am I going to do with any of that in a server template
<normeo>systemd*