IRC channel logs

2023-06-15.log

back to list of logs

<Guest27>If I report a bug, is it possible to get an email if someone answers to that bug?
<old>hey where's librt.so
<old>can't find any anymore in gcc toolchain
<old>that's a bummer
<old>I have to check for librt.so.1 now
<ChocolettePalett>It might be a silly question, but do I understand correctly that in order to upgrade packages in my guix home environment, I should do guix home reconfigure?
<iyzsong>ChocolettePalett: yes, same as 'packages' in the system profile upgrade via 'guix system reconfigure'
<ChocolettePalett>Thank you!
<old>another question related GCC
<old>why the libiberty package only has libiberty.h?
<old>why not all the other files like in ubuntu? https://ubuntu.pkgs.org/22.04/ubuntu-main-amd64/libiberty-dev_20211102-1build1_amd64.deb.html
<ChocolettePalett>old: it seems to have libiberty.a file too!
<ChocolettePalett> https://git.savannah.gnu.org/cgit/guix.git/tree/gnu/packages/gcc.scm#n1013
<ChocolettePalett>Oh, nvm, it was about the header files...
<sughosha>Hi everyone! Is it possible somehow to add "--with-configure-flag=XYZ" in a manifest file? I want some persistant configuration for different apps so that not everytime I update I need to type in console.
<mirai>sughosha: I don't know if there's a shortcut for it but you can always inherit a package definition and change it to add the configure flags you want
<sughosha>mirai: Ok. Thank you!
<HiltonChain[m]>sughosha: You can try (options->transformation) procedure in (guix transformations)
<HiltonChain[m]> <https://guix.gnu.org/en/manual/devel/en/html_node/Defining-Package-Variants.html#index-options_002d_003etransformation>
<sughosha>HiltonChain[m]: Thanks you! I got it.
<Guest206>morning, guix :)
<cnx>hello, guix
<cnx>could some committer take a look at https://issues.guix.gnu.org/64033? it's a trivial patch bumping go-runewidth; i happen to have two WIP patchsets depending on it
<mekeor[m]>sughosha: another easy way is to just do "guix install foo --with-configure-flag=..." and then "guix package --export-manifest"
<sughosha>mekeor[m]: Wow, this seems to be the easiest way!
<mekeor[m]>cnx: how come those typos were commited? :D
<mekeor[m]>old: i'm not sure but perhaps try gcc-toolchain:static for librt.so
<mekeor[m]>old: see also https://issues.guix.gnu.org/63258#0
<cnx>the typos were probably propagated through autocompletion (-;
<civodul>Hello Guix!
<janneke>o/
<ulfvonbelow>what on earth happened to lftp.tech? I get a hash mismatch when I try building lftp, and when I try accessing the download url I get a blank page unless I enable javascript, at which point it redirects to an http page (ww1.lftp.tech), at which point it redirects to a site called ijfbodn.com which ublock origin blocks.
<ulfvonbelow>also the lua*-expat url is broken, all links to the original site now redirect to a github page
<ulfvonbelow>huh, looks like it's not lftp.yar.ru.
<ulfvonbelow>s/not/now/
<zamfofex>Actually stupid whoever decided to make the update to glibc for completely forgetting about librt. How did y’all let such an idiot even contribute to the project? <https://issues.guix.gnu.org/54832>
<cbaines>civodul, regarding https://qa.guix.gnu.org/issue/63621 you'll see more information if you click on "View Guix Data Service comparison"
<cbaines>the long answer is that python-plotly is undefined though
<_________>is GNU Shepherd tied to GNU Guix or can it be used independently e.g. as an init system for gentoo with portage?
<mirai>independent
<_________>cool :)
<zamfofex>(Also, I should say that I was half‐joking with the “idiot” thing. If you follow through that link, you’ll see that I was the one who updated it. I say “half” because I’m definitely stupid, though.)
<mirai>sneek: later ask civodul: Should deregister-service be exported by (shepherd service) as well since register-services is?
<sneek>Okay.
<civodul>cbaines: i see, thanks!
<sneek>Welcome back civodul, you have 1 message!
<sneek>civodul, mirai says: Should deregister-service be exported by (shepherd service) as well since register-services is?
<civodul>mirai: you think it'd be useful?
<mirai>civodul: It's useful if you want to create "task-like" services with shepherd
<mirai>that is, they are unregistered after achieving their purpose (while being “interruptible/resumable”)
<civodul>like a transient service?
<civodul>they get unregistered upon completion
<civodul>(it might still be useful to export deregister-service though)
<mirai>almost like a transient except “stop” doesn't unregisters it
<mirai>the unregister is to be done explicitly
<mrvdb>hi guix. i'm trying to build libreoffice on ppc64, it chokes on building dependcy firebird with "error: ISO C++17 does not allow dynamic exception specifications" Is there a way to specify to use lower c++ std?
<civodul>mirai: explicitly by the user?
<mirai>by calling deregister within the stop slot (or the termination handler)
<civodul>mrvdb: hi! i would try to see why this only happens on PPC64, because intuitively i think problems at that level would occur on every architecture
<civodul>mirai: but hmm how does that differ from a transient service? :-)
<mirai>I'm prototyping a (robust) unattended filesystem scrub service-type where the idea revolves around mcron creating a shepherd-service dynamically
<civodul>hmm
<civodul>i'd suggest getting mcron out of the picture :-)
<mirai>and a activation-extension that creates a “resume” shepherd-service if the last job didn't finish
<civodul>that's a btrfs thing?
<mrvdb>civodul: agreed, but that would be a significantly harder route ;-) (for me, at least)
<mirai>I'm prototyping this with btrfs-scrub in mind, yes
<civodul>mrvdb: maybe you could compare with the x86_64 log in search of hints such as different build flags?
<mirai>but the idea was to have shepherd manage a ”task”
<civodul>(this reminds me of defrag on DOS)
<mirai>since it's not really a traditional daemon or shepherd-style service
<civodul>maybe you can write it similar to the monitoring service?
<civodul>apparently the Ruby install phase would sometimes (?) run endlessly
<civodul>does that ring a bell anyone? cbaines?
<civodul> https://ci.guix.gnu.org/build/1372057/details
<cbaines>nope, and I can't see the log for that Cuirass build
<mirai>Extremely terse notes <https://paste.centos.org/view/ed049d6a>, this is more or less what I'm thinking on having a fire-and-forget scrub serviec
<mirai>which of the monitoring services?
<civodul>mirai: https://www.gnu.org/software/shepherd/manual/html_node/Monitoring-Service.html
<mirai>ooh, I was looking at guix monitoring.scm
<sozuba>what is the differeence betwenn lvm2 static and lmv2?
<TristanCottam[m]>Hi guys!
<TristanCottam[m]>It's been a while
<TristanCottam[m]>I'm trying to `guix import` a graph database called `dgraph`, but when running `guix import go -r github.com/dgraph-io/dgraph`, I get the following error.
<TristanCottam[m]> https://pastebin.com/D307jBz3
<TristanCottam[m]>If anyone has any idea how I could even start to troubleshoot, it'd be great!
<HiltonChain[m]>sozuba: lvm2 is dynamically linked, it loads dependencies at runtime via glibc's loader. lvm2-static is statically linked, it has its dependencies built-in.
<cbaines>TristanCottam[m], do you have a theory about which repository it's expecting to find the v1.7.28 tag in?
<TristanCottam[m]>No idea
<TristanCottam[m]>Is there any way to troubleshoot this kind of error on Guix?
<cbaines>there's nothing special about troubleshooting these errors as far as I'm aware
<cbaines>just requires using the information available plus some brain power
<sozuba>HiltonChain[m]: Understood. Thank you :)
<sozuba>"-bash: pvcreate: command not found", i thorught i have to install lvm2 but looks like that didn;tsolve the issue. Anu idea?
<cbaines>TristanCottam[m], you can get a more complete backtrace by adding COLUMNS=1000, e.g. COLUMNS=1000 guix import go -r github.com/dgraph-io/dgraph
<TristanCottam[m]>I'm not on my laptop right now, but I'll give that a try, thanks!
<sughosha>Hi! I want to substitute* a string that contains a '. I tried with \\' and \\\\' and both of them didn't work. Also without backslashes did not work.
<mekeor[m]>sughosha: please share your code :)
<sughosha> https://paste.debian.net/1283067/
<sughosha>In snippet
<zamfofex>Shouldn’t you be able to just have the plain apostrophe?
<zamfofex>I don’t think they are special in regexes.
<sughosha>Oh, I tried without any backslash and now it worked!
<mekeor[m]>sughosha: maybe because the "list" word is in a quote?
<mekeor[m]>sughosha: i.e. `(... (list ...))
<sughosha>mekeor[m]: I tried without any backslash and now it worked.
<mekeor[m]>sughosha: mayb try `(... (...)) instead
<mekeor[m]>or `(... ,(list ...))
<mekeor[m]>but also i wonder why you use snippet instead of another phase
<sughosha>last time I tried but don't know why it did not work. Looks like there is a magic with this IRC channel 😄️
<zamfofex>mekeor[m]: I think it’s fine to have ‘list’ in a quote like that (and required in that case).
<sughosha>mekeor[m]: Is another phase preferable than snippet, or vice versa?
<mekeor[m]>sughosha: here is an example for such a phase https://issues.guix.gnu.org/64030#0-lineno44
<zamfofex>It should also be possible to have another quote instead of using ‘list’ too (because all of the values are strings, which are self‐quoting, if I remember my Scheme terminology right).
<mekeor[m]>zamfofex: sounds weird to me but ok
<mekeor[m]>zamfofex: strings? or symbols? or atoms? :D
<sughosha>Ok. I found examples of delete-file-recursively in snippet itself, so thought to unbundle third party libraries in snippet.
<mekeor[m]>`(list foo) gives (list 'list 'foo)
<zamfofex>mekeor[m]: The reason is that the snippet is a piece of Scheme code that will be delegated to be run later in a different environment. (Rather than being used as data.)
<mekeor[m]>sughosha: idk which approach to prefer when. sorry :)
<zamfofex>mekeor[m]: You can use ‘eval’ on a quoted piece of code to run it.
<zamfofex>E.g. ‘eval '(list foo)’
<zamfofex>Sorry, ‘eval '(list foo)’
<zamfofex>*ahem* Sorry, ‘(eval '(list foo))’
<mekeor[m]>sure
<mekeor[m]>i know :D
<sughosha>mekeor[m]: I will submit the patch and follow the reviews :)
<sughosha>I think it makes sense to have it in argument instead of snippet. Maybe snippet works for single command.
<mekeor[m]>does the substitution work now?
<sughosha>mekeor[m]: Yes
<Zambyte>Morning Guixers :)
<user_oreloznog>o/
<mwette>last week we had a power outage at same time I edited my config.scm; when I booted networking failed, message in /var/log/messages said hardwire device not found, but after booting, I could bring up networking by hand (via ifconfig and if route). I performed guix pull and guix system reconfigure /etc/config.sys, and now I get (via herd start networking): Throw to key `%exception' with args `("#<netlink-response-error errno: 17>")'.
<mwette>Any ideas?
<civodul>17 = EEXISTS
<civodul>i think that means that the 'networking' service is trying to set up links/devices that have already been set up
<mwette> OK. Let me try a reboot.
<civodul>so that's expected if you manually do "ip a whatever" and then "herd start networking", for instance
<civodul>but it should tolerate that instead of failing
<mwette>rebooted; no networking; /var/log messages says "(no-such-device "enp4s0") from sheperd. still troubleshooting ... but leaving soon
<mwette>thanks
<civodul>mwette: ah, could it be <https://issues.guix.gnu.org/63516>?
<civodul>fixed less than 24h ago
<mwette>civodul: thanks - doing another pull and reconfigure
<civodul>mwette: did you notice something similar as reported here: device detected after 'networking' has started?
<gabber>i try to pull my new channel with `--disable-authentication` but i get a: Git error: could not find appropriate mechanism for credentials. what am i missing?
<civodul>gabber: hi! are you fetching your channel over SSH?
<gabber>... yes, i just figured i have a https address configured instead of the git: one
<gabber>:)
<civodul>yeah the error is about SSH credentials i believe, so if you can use https instead, it'll be easier
<civodul>note that --disable-authentication has nothing to do with that though and should be avoided
<Zambyte>I can't seem to import modules defined in extra channels when using guix repl nor guix build -f ./guix.scm with my local package definition. Is this a bug, or am I expected to add the channel code to my load path manually before importing it?
<Zambyte>guix describe and guix home describe both show the channel too
<Zambyte>wait I may be dumb
<gabber>ah yes, i see. thanks for the clarification -- the error came from the repo being (still) private
<Zambyte>confirmed dumb, not an issue :D
<civodul>:-)
<old>what tool is used to generate patch under gnu/packages/patches?
<old>I typically use git-format-patch for this, but it seems like the patches in guix are not from git
<mwette>civodul: the guix pull and reconfigure fixed my networking issue
<old>I suspect that it depend on the source. if it either came from a tar.gz or from a git-repo?
<civodul>mwette: awesome, thanks for confirming!
<civodul>old: you can use 'diff', 'git diff', or any variant on that theme
<Cairn>I can't remember: Do we allow any verbatim quotes in package descriptions? And which characters would I use for that?
<janneke>old: many of those were generated using format-patch
<old>awesome
<old>thanks
<ieugen[m]>hi, I have a strange issue with copy-build-system, it sais file not found, but it's there. any ideas ?
<ieugen[m]> https://paste.debian.net/1283102/
<ieugen[m]>I get system-error "stat" "~A: ~S" ("No such file or directory" "updatecli")
<ieugen[m]>unpack phase lists the file
<ieugen[m]>the file is present in the build directory as well
<Reed15>I'm trying to understand the development workflow with "guix shell". In particular, I'm reading the article on this excellent article on the guix blog:
<Reed15> https://guix.gnu.org/blog/2023/from-development-environments-to-continuous-integrationthe-ultimate-guide-to-software-development-with-guix/
<Reed15>However, when I run "guix shell --container --link-profile" I (obviously) no longer have access to my text editor. Is there an idiomatic way to include things like this in the development environment? If I run "guix shell --container --link-profile vim" It ignores the guix.scm file and just sets up a shell with vim. If I run "guix shell --container
<Reed15>--link-profile -f guix.scm vim" it also seems to ignore the guix.scm file and just include vim
<mekeor[m]>Reed15: i guess there are different approaches
<mekeor[m]>1. don't use --container
<mekeor[m]>(since it implies --pure afaik)
<mekeor[m]>2. add vim to the guix.scm
<mekeor[m]>2a. maybe have two versions of guix.scm where one includes vim
<mekeor[m]>3. use a terminal emulator or shell within vim
<mekeor[m]>4. run vim outside of the guix-shell
<mekeor[m]>(i'm just brainstorming. that's all i have.)
<mekeor[m]>it might also be worth asking on the help-guix mailing-list
<mekeor[m]>personally, using emacs, i'd use the buffer-env.el package, which is like (3.)
<Reed15>Thanks! I just wasn't sure if there was a standard/most common way. I'd like to use --container to get in the habit of ensuring reproducibility, but I hadn't thought of 3 or 4
<Cairn>Why do packages that use the mirror: uri not use their name variable, but do use the version variable? Look at gnome-chess for an example.
<buddhilw>Cairn: I took a lok at `gnome-chess` and the version is used to fetch a given version of `gnome-chess` from the unified resource identification (URI).
<buddhilw>It has to do of how the URI is specified, right? I don't understand where you are confused
<Cairn>I'm just confused why they don't also use the name variable.
<Cairn>Since "gnome-chess" is repeated multiple times in the URI
<buddhilw>Well, they probably could? As yourself noted
<buddhilw>If you can substitute the variable and produce the same outcome, then you can use it as a variable in it's place
<Cairn>Wonder what's the reason they don't
<Cairn>Probably a conversation a long time ago
<buddhilw>I wouldn't be able to tell.
<buddhilw>Is that a pattern you find in every URI-related package?
<buddhilw>With xmonad, they use: (uri (hackage-uri "xmonad" version))
<buddhilw>In this case, the name is a variable
<buddhilw>although, the variable `name` per se is not used
<buddhilw>Maybe because the name of the package can change?
<buddhilw>Idk
<Cairn>Yeah, not sure.
<apteryx>we do not have the java antlr3 package, do we?
<apteryx>oh but we have antlr2
<apteryx>and something called java-tunnelvisionlabs-antlr4, whatever that is
<apteryx>'guix search ^antlr' was of help ^^'; seems we have antlr3 or even antlr4 packaged
<juli>does anyone know how to troubleshoot the configuration of the qemu-binfmt system service for various platforms? I thought I'd set things up to be able to cross-compile for all the platforms Guix supports, but several keep failing and saying they can't be compiled on my platform, while others work fine
<ieugen[m]>is there a guideline for packaging that mentions where to put files ?
<juli>what specific files are you trying to figure out about? if it's generic "where do I put X type of files on a Unix-like OS", there's nothing Guix-specific; if it's a Guix-specific file, maybe
<juli>(and even if it's a generic Unix question that's not always clear tbh)
<ieugen[m]>juli: stuff like bash, zsh, fish completions, docs, etc
<ieugen[m]>man pages
<ieugen[m]>also, I noticed that guix will add license to a specific doc path that contains package version. How can I add more files there ? How can I get the package version inside builder / #:install-plan ?
<ieugen[m]>this fails of course since there is no version in build plan: ("README.adoc" (string-append "share/doc/updatecli-" version "/"))
<ieugen[m]>s/build plan/builder/, s//`/, s//`/
<juli>it should just be `(string-append #$output "/normal/FHS/path")`. as for manpages and docs, that path would be `"/share/doc/<package-name-and-version>/"` and `"/share/man/manX"` where X is the section number. not sure about the completion stuff though I know it goes somewhere specific
<juli>you should look at https://guix.gnu.org/en/manual/devel/en/html_node/G_002dExpressions.html for more on getting input and output paths at build-time
<ieugen[m]>thanks juli , will update package
<juli>it's difficult to document all the handy little utilities and tricks involved in various packaging scenarios, especially niche ones; I'd advise trying to look at similar packages' definitions
<ieugen[m]>how do I get `share/doc/<package-name-and-version>/` ?
<civodul>ieugen[m]: check the 'install-license-files' phase in gnu-build-system.scm
<ieugen[m]>looks like I have to do some reading tomorrow
<ieugen[m]>thanks
<civodul>also: https://guix.gnu.org/manual/devel/en/html_node/Build-Utilities.html#index-strip_002dstore_002dfile_002dname
<juli>ty civodul i was trying to find it but haven't used it enough to know where it was XD
<civodul>yeah it's a bit of a maze :-)
<ieugen[m]>out of curiosity, what are the next big milestones for guix ?
<juli>follow-up on my earlier question: all linux platforms can [attempt to] compile hello (riscv64 and powerpc are having compilation issues) except mips64el which is telling me I don't have mips64el setup. which is odd, since looking at the `guix repl` output of `(lookup-qemu-platforms "mips64el")` returns a result that looks right, and that's the string I'm using in my system config...
<ngz>It seems install-plan argument from copy-build-system is not able to cope with multiple outputs.
<civodul>ieugen[m]: there are various projects floating around: GNU/Hurd, RISC-V port + bootstrapping, p2p substitute distribution, the famous daemon rewrite in Guile
<civodul>these are the big items
<civodul>some are making progress, others not so much
<civodul>and then there's a flurry of short- to medium-term projects in various areas
<user_oreloznog>Good night guix!