IRC channel logs

2021-10-28.log

back to list of logs

<DigitalKiwi>nifty
<drakonis>sure is
<DigitalKiwi>so i should run it on the WAN for good measure ;D
<drakonis>nix proved the idea works, but guix made it better and friendlier
<civodul>apteryx: this more complex one works as expected (builds idutils remotely):
<civodul>(remote-eval (with-imported-modules '((guix build syscalls)) #~(begin(use-modules (guix build syscalls)) #$(@ (gnu packages idutils) idutils) (free-disk-space "/"))) s #:build-locally? #f)
<civodul>ok, i can reproduce with the full "guix deploy"
<civodul>always tricky to choose a machine as a guinea pig :-)
<minikN>Good evening, is it possible to call the `search-patches` proc without specifying the strings inline? I tried (search-patches my-patches) with (my-patches (values "1" "2" "...")) but I get an "unexpected end of input while search for ~A". Thanks
<civodul>minikN: hi! you can do (apply search-patches my-list-of-patches), or (map search-path my-list-of-patches)
<apteryx>civodul: yeah I'm a bit worried too -- still deploying to my offload machine with the key local-file commented outs
<civodul>'search-patches' is a procedure that takes any number of arguments
<apteryx>I'm keeping an ssh opened in case ;-)
<civodul>heh
*apteryx has to go for a bit
<apteryx>thanks for entertaining my debugging, civodul!
<ajarara>I've found an app that is a couple of major versions behind releases... if I send a patch to update it upstream should I keep the old one around? I've seen nixpkgs do this, like app_2_3, app_2_4, app -> app_2_4
<nckx>Not without good reason.
<ajarara>on the one hand it's not a lib so no need to worry about API breakages
<ajarara>on the other that kind of thing is probably caught by CI. Broken user workflows are not.
<ajarara>nckx: any guidance available on what good reasons are?
<civodul>apteryx: got it, lemme know how it goes -> https://web.fdn.fr/~lcourtes/pastebin/deploy-build-locally-fix.patch.html
<nckx>It's okay to be proactive with upstream updates and be reactive when it comes to ‘x broke my workflow’ bugs only when they actually occur.
<civodul>works for me!
<nckx>ajarara: If there's a genuine case to be made to continue using the old version. I can't think of good examples. It's rare.
<drakonis>civodul: "SSL_ERROR_UNSUPPORTED_VERSION"
<drakonis>weird.
<ajarara>nckx: 👍
<ajarara>Thanks!
<nckx>If you're just worried about testing wether 2_4 broke something, or need to rescue 2_3 data somehow (again, rare, because 2_4 should be backwards compatible), guix time-machine is good enough, at the cost of any old security updates not being backported.
<civodul>drakonis: ah yes, IceCat says "weak encryption"; not great, but i don't control that server :-/
<drakonis>i see
<drakonis>firefox itself doesnt give me the option around it
<ajarara>ah that's the way to pull old package definitions? I would just fetch an archive from a checkout in nix if I wanted to freeze a definition
<drakonis>i think its going to stop working once icecat is upgraded to 92
<nckx>ajarara: That sounds like the same thing.
<minikN>civodul: That worked. Many thanks!
<ajarara>time machine sounds like 'rewind the channel and eval my system declaration then', instead of 'I want app from checkout xyz, everything else stays the same'. But that's my first impression, probably clearer after reading an info page
<drakonis>gonna test out with 91 now
<nckx>ajarara: ‘guix time-machine --commit=<past commit> -- install foo’ is like ‘guix pull --commit=<past commit> && guix install foo’ or ‘git checkout <past commit> && ./pre-inst-env guix install foo’ but doesn't actually downgrade your guix.
<ajarara>got it
<drakonis>civodul: so, it doesnt work with newer icecat versions
<excalamus>bam! Got it!
<drakonis>just tested it :|
<excalamus>vivien, did what you said and included Qt as an input and computed the plugin path
<excalamus>aka, stole code that did that from another package :)
<minikN>civodul: Correction, it didn't work. I tried both map and apply, I get (exception syntax-error (value #f) (value "source expression failed to match any pattern") (value #f) (value search-patches) (value #f)), I did (define my-patches (list "1" "2" "...")) and (apply search-patches my-patches)
<civodul>minikN: ah sorry, i was wrong about search-patches; but (map search-patch my-patches) should work, no?
<ajarara>Noticing lack of poetry/gradle usage in package definitions. These both have the 'resolve dependency constraints into specific versions, fetch from network, build, all in one command' workflow, which is a problem when you've got no network during the build step. Has no one attempted either of these?
<ajarara>Here's one solution I found a few months ago: https://github.com/tadfisher/gradle2nix
<ajarara>gradle has support for filesystem repos. poetry has configurable filesystem caches, but the cache is more opaque than gradle
<roptat>ajarara, I think a first step would be to package gradle itself
<roptat>which requires kotlin, which is extremely hard to bootstrap
<roptat>the build-system is relatively simple compared to that, we can probably reuse some of the code we have for the maven-build-system
<apteryx>sneek: later tell civodul wow! it works :-) thanks a lot for finding the solution!
<sneek>Got it.
<excalamus>I'm running org-mode to document the packaging I'm doing. I'm running the guix shell commands through a source block. Works great except, it seems the shell wants to put spinner characters and other non-printable things in the output.
<excalamus>if I check echo $TERM inside the shell block, it says dumb
<dragestil>Hi, why are there two node packages in guix show node?
<apteryx>dragestil: there are two versions available
<apteryx>14.16.0 and 10.24.0
<dragestil>ok, why are there two versions available?
<apteryx>probably a package still requires it
<apteryx>or perhaps 10.24.0 is the previous LTS and still supported, I haven't checked
<dragestil>ok thanks
<cyberbanjo>
<cyberbanjo>Trying to make package for kong which is a go-lang project, get this error building
<cyberbanjo>can't load package: package github.com/Kong/kong: no Go files in /tmp/guix-build-go-github-com-kong-kong-1.0.0.drv-0/src/github.com/Kong/kong
<cyberbanjo>I tried to guix import go, when installing it looks in wrong place ^^ this directory doesnt exist but /tmp/guix-import-go-$USER does (and has hash-folders in it)
<podiki[m]>excalamus: that sounds cool (org-mode to develop a guix package), hope you make that available somewhere later
<excalamus>excalamus.com
<excalamus>everything I've done I've tried to document
<excalamus>that's why it takes me 10 years to do anything, lol
<excalamus>been chatting with the emacs folks and they say to bug you guys :)
<excalamus> should I just open a ticket?
<roptat>cyberbanjo, you need to use the go-build-system, #:import-path and possibly #:unpack-path
<excalamus>well, submitted. And now I must submit to the clock. Good night!
<apteryx>eh, python-numpy refers to lapack... exept it's not in the inputs
<apteryx>commit 6623d1cd7f3
<apteryx>fixed
<jgart>how can I compile a static binary with guix?
<jgart>for example I'd like to compile vis editor statically
<apteryx>it's possible, but if it has many dependencies, it may require them to be recompiled with -fPIC
<apteryx>(most libraries in Guix are shared libraries; .so can be linked into .a as long they were built with -fPIC)
<civodul>Hello Guix!
<sneek>Welcome back civodul, you have 1 message!
<sneek>civodul, apteryx says: wow! it works :-) thanks a lot for finding the solution!
<wonko-tmp>jpoiret: quick update: with 0022 umask, reconfigure didn't restore permissions, but system init did. all good now :)
<florhizome[m]><nckx> "ajarara: ‘guix time-machine --..." <- When I don‘t issue the commit specification, what commit will be used?
<florhizome[m]>I have used it like that for now, it magically worked but maybe some message at the beginning to indicate what is happening would be good?
<qzdlns[m]>wassup guix
<newb>Are there any efforts being made to make Guix more accessible to the underclass of programming intellect?
<civodul>newb: hi! i don't think there's an "underclass of programming intellect", but yes, we try hard to make things accessible
<civodul>do you have specific examples in mind of where it fails?
<newb>Haha just some sarcasm, however, from Arch which is typically described as "for advanced power users" Guix feels like another like... like you actually need to know how to code.
<newb>My biggest obstacle at the moment is just making xmonad the window manager and launching X from the tty instead of using a display manager.
<newb>simply putting `exec xmonad` in .xinitrc no longer works.
<jlicht>hello guix!
<civodul>newb: currently there's no startx so you kinda have to use a display manager
<civodul>we should do something about it
<civodul>hey jlicht!
<civodul>newb: if you do use a login manager, you can just add "exec xmonad" in ~/.xsession (and make it executable)
<civodul>or install xmonad in the "system profile" so you can select it from the menu
<newb>This guy found a "hack" for executing with startx
<newb> https://git.sr.ht/~jsoo/dotfiles/tree/release/item/guix
<newb>but it seems a login manager is the easiest way to move forward
<civodul>yes, but providing a 'startx' command as show by jsoo above wouldn't be difficult
<civodul>we should do that
<newb>it would be greatly appreciated and would help with my transition to guix. thanks!
<jpoiret>wonko-tmp: glad to hear it's working now! I reported the issue as bug 51442, and it should be sorted out relatively quickly I think, given the nature of the bug
<newb>civodul: 'sx' is marketed as a minimal alternative to 'startx'
<newb>if that is the inclination
***rgherdt_ is now known as rgherdt
<newb>does anyone have a free (as in freedom) usb wifi that they woud recommend?
<excalamus>good morning, Guix
<jlicht>newb: I have the technoethical N150 usb adapter, which works well enough for my needs
<jlicht>any particular reason tests for c-ares on core-updates-frozen are disabled? The provided GTEST_FILTER seems to get all tests to pass on my machine consistently.
<liltechdude>Hello. How I can change "remote component" of branch in .config/guix/channels.scm? For example, for now I have "my-branch", but when change to "fork/my-branch", error ocured "guix pull: error: Git error: cannot locate remote-tracking branch 'origin/fork/my-branch'"
<jlicht>liltechdude: your branch is called 'fork/my-branch'? Or do you have a branch called 'my-branch' on a different remote called 'fork'?
<liltechdude>second
<jlicht>Then you should adjust the url, instead of the branch;
<civodul>rekado (+ zimoun + PurpleSym): URLs like https://cran.r-project.org/web/packages/svDialogs/DESCRIPTION provide only one version; is there a way to get a specific version of a CRAN package?
<liltechdude>url is (url "file:///home/lil/junk/mem")
<jlicht>IOW, there is no 'remote component'
<jlicht>liltechdude: so the repo at /home/lil/junk/mem has a branch called 'my-branch'?
<liltechdude>Yes
<jlicht>than 'my-branch' instead of 'fork/
<jlicht>* fork/my-branch should work
<jlicht>liltechdude: If you are trying to use the file:/// url to fetch branches from an actual remote; I don't think that is supported, in that case you should just use the remote's url directly
<PurpleSym>civodul: You can download the tarball from the archive and extract it. It should have a DESCRIPTION as well. There’s also this time-machine: https://mran.microsoft.com/timemachine
*civodul .oO Microsoft bought GUIX (the other one) and now they have time-machine!
<civodul>PurpleSym: concretely, i'm looking for a way cran->guix-package could honor #:version
<civodul>IWBN if it could be almost the same as getting the latest version
<qzdlns[m]>hey guix
<PurpleSym>civodul: I’m not aware of any endpoint serving `DESCRIPTION` for older versions or even a list of versions :(
<excalamus>qzdlns, o/
<PurpleSym>(At least nothing official.)
<qzdlns[m]>having some trouble with my guix/rde installation
<qzdlns[m]>hey excalamus
<qzdlns[m]> https://paste.debian.net/1217177/ for anyone keen
<qzdlns[m]>haven't debugged the pg_ctl wrapper before
<rekado>civodul: AFAIK you can only fetch an old package from https://cran.r-project.org/src/contrib/Archive/svDialogs/, and unpack its DESCRIPTION file.
<rekado>but even these files will not refer to any version numbers
<pkal>Are the posix manpages non-free software?
<rekado>it’s a bit like Guix in that at every point in time there’s only ever one version corresponding to a name.
<abrenon>good morning guix
<apteryx>pkal: why?
<abrenon>giving guix shell a try and it's been really pleasant so far : )
<wigust>hi guix
<abrenon>a question about auto-loading though: is it considered a bad practice to write both a guix.scm and a manifest.scm in the same repository ?
<pkal>apteryx: I was wondering if it would be worth contributing to Guix (as it is not software) or not
<abrenon>I've tried it and right now guix shell does the right thing for me (load the manifest), but I was wondering if I could count on that behaviour or if I should rename guix.scm to something else
<apteryx>pkal: I think it's worth contributing; we have a manpage package for the Linux kernel, for example
<roptat>hi guix!
<roptat>abrenon, it'll load the manifest if present, and fall back to guix.scm
<roptat>but it might be better to rename guix.scm to be safe, in case that behavior changes in future versions
<abrenon>ok, so there's no guarantee, that's what I wanted to know
<abrenon>thanks for your answer
<abrenon>I had to resort to that structure for my haskell packages : when I define a library, I always want ghc in the environment too to get a useful $GHC_PACKAGE_PATH
<abrenon>but on the other hand I want to declare the package separately to be able to load it from another package (I have dependencies on other local packages)
<roptat>isn't it present in guix.scm too? (implicitely?)
<abrenon>ghc ?
<roptat>yes
<roptat>I thought you'd need it to build a haskell library
<abrenon>not sure what you mean "in guix.scm" but when I simply declare my package in guix.scm and enter guix shell, GHC_PACKAGE_PATH doesn't follow
<abrenon>yes, I need to (use-modules (gnu packages haskell)
<abrenon>but that doesn't put it in the output of the module
<abrenon>(or am I missing something ?)
<roptat>ah, maybe I don't understand what you want in your shell
<roptat>I thought you would be doing guix shell -D -f guix.scm or similar
<roptat>(not entirely sure about the syntax, I still haven't used it)
<abrenon>nope, because for haskell development cabal is completely useless
<abrenon>so I really use guix 100% of the time for compilation
<roptat>ok
<abrenon>I would usually go like (until this morning): guix environment --ad-hoc ghc ghc-mylib
<roptat>I see
<abrenon>(declaring ghc-mylib in a central file that lives somewhere in my home, vaguely shaped like a channel)
<roptat>so you want an environment with the package already built, not a development environment
<abrenon>yes, because even from ghci, I don't really know how to source each module separately (there's :load, but it kind of seems to replace all the modules loaded so it's annoying)
<abrenon>and so I moved the declaration of ghc-mylib to guix.scm in ~/Development/ghc-mylib
<abrenon>and added a manifest.scm to simply return both ghc and (load "guix.scm")
<abrenon>but I presume people doing python would have to do the same, wouldn't they ?
<abrenon>I'm curious about what other people have devised
<roptat>yeah, if you want an environment with the package built instead of a development environment
<abrenon>maybe that's my mistake, maybe I should find a way to use ghc directly ?
<abrenon>I should still be able to do it with -D on shell, right ?
<roptat>I don't know, actually I noticed I also have a manifest in my python project
<abrenon>but no guix.scm or my-project.scm ?
<roptat>yes
<roptat>I also have a guix.scm
<abrenon>ok
<roptat> https://framagit.org/tyreunom/offlate
<roptat>two manifests ^^'
<abrenon>(wasn't the point of guix shell to have an environment containing the package and not a development environment ?)
<roptat>not sure what I was doing :p
<abrenon>^^
<roptat>I think that's what you get when you run guix shell (alone) in a directory that has a manifest.scm
<abrenon>"neovim" ?!
<roptat>but if the directory has a guix.scm instead, then it assumes it's a dev repo, and you get the dependencies instead
<roptat>I think it's to be able to use it in a --pure environment
<abrenon>not what I understood from http://guix.gnu.org/fr/blog/2021/from-guix-environment-to-guix-shell/
<roptat>ah maybe I'm wrong, again I haven't tested it yet
<abrenon>so re-reading the above, I take it that you're more comfortable using guix to build dev environments and work from there ?
<roptat>yes
<roptat>I use guix.scm / manifest.scm for that purpose : don't pollute my main environment and give me the tools to develop and build locally
<abrenon>ok
<abrenon>thanks a lot for your feedback
<abrenon>I find it helpful to learn how others are using the same tools
<abrenon>oh, I broke guix shell ^^'
<roptat>abrenon, time to report a bug then :)
<abrenon>ooooh the sly beast, exiting with 1 and absolutely no relevant message for a mere extra ')' at the end of the file
<abrenon>I never find proper bugs: all I ever do is complain about the quality of error reporting ; )
<roptat>I consider that a bug too
<roptat>we should have clear error reporting
<abrenon>I'll try and reproduce it later and if I it's confirmed I'll file the bug report then
<abrenon>see you !
<jlicht>does auto-loading guix.scm/manifest.scm work /w guix shell in `/tmp' for anyone?
<M6piz7wk[m]>What's the current situation with paramerized packages in GUIX ?
<M6piz7wk[m]>Can i already use them?
*M6piz7wk[m] wants to switch from nixos bcs the nixlang is annoying
<podiki[m]>what are paramerized packages?
<roptat>parameterized
<podiki[m]>....what are parameterized packages? what does that mean?
<roptat>it was a proposal to have parameters in packages, that would allow you to change how they are built
<roptat>I'm not sure what's the current situation though
<podiki[m]>ah
<podiki[m]>rather than having to have a new package def, could do via like a transformation option?
<roptat>yes, a bit like the USE flag of gentoo if you know that
<podiki[m]>yup (one of my first linuxes long ago)
<podiki[m]>seems that wouldn't be too hard for something basic that just passes configure flags like a package transformation
<podiki[m]>on the startx front that keeps coming up, I do have a local package of https://aur.archlinux.org/packages/xinit-xsession/ (xinitrc shows up as a session to select in a display manager)
<apteryx>uh; gtk depends on gst-plugins-bad
<apteryx>raghavgururajan: ^ do you know if that's necessary?
<apteryx>seems undesirable, especially since it pulls qtbase (through libde265)
<apteryx>ah, it's for gstreamer-gl
<apteryx>do you think we could disable that without consequence? seems unfortunate to depend on qt for our gtk package
<civodul>rekado: recoll has an invalid home-page field
<jonsger>In procedure car: Wrong type argument in position 1 (expecting pair): () means that there is nothing (empty pair) coming back instead of a pair?
<pinoaffe>jonsger: yes: the empty list '() is not a pair, therefore (car '()) fails
<pinoaffe>if code gives that error, that probably means that something that is expected to return a list of one or more items returned the empty list instead (or that something that is expected to return some other sort of pair returned the empty list instead)
<jpoiret>i just saw a use of "make system-check" in a mail, is there any documentation about these? how do they work, what do they do?
<jonsger>pinoaffe: thx. I found the root case in the mean-time. Now onto fixing it :)
<mekeor[m]>hi guix :)
<neutral>hi guix
<razor[m]1>hey
<ajarara>Is it possible to override sources for inputs? I see `guix build --with-source` has a few ways to declare, but I get 'transformation had no effect' when I do it on inputs
<ajarara>command I'm running is: 'guix build guile-ssh --with-source=libssh=../libssh --with-source=../guile-ssh'
<ajarara>the second works, the first doesn't. Trying to run `guix build libssh --with-source=../libssh` works as expected.
<abrenon>jlicht: it doesn't seem to be working here either
<roptat>ajarara, indeed, it doesn't work as I would expect either
<abrenon>I created a bogus guix.scm which contains a (package #f) to make guix complain
<abrenon>it complains when I guix shell -f guix.scm from there
<abrenon>but, after having added /tmp in ~/.config/guix/shell, guix shell simply yields a warning about an empty environment
<abrenon>and returns 0
<abrenon>isn't there a problem with all the /tmp/** subtree ?
<abrenon>I've just tried creating a guix.scm for hello by copy-pasting the definition from https://guix.gnu.org/manual/devel/en/html_node/Defining-Packages.html
<abrenon>running guix shell warned me about shell-authorized-directories, I added my /tmp/subdir there
<civodul>roptat: i got the /devel package updated, after reconfiguring berlin
<abrenon>but running guix shell, I see the following message
<civodul>so we can read https://guix.gnu.org/manual/devel/en/html_node/Invoking-guix-shell.html
<abrenon>guix shell: loading environment from '/tmp/subdir/guix.scm'...
<abrenon>but my environment doesn't contain hello
<abrenon>while it does if I guix shell -f guix.scm from the same directory
<roptat>civodul, great!
<civodul>abrenon: no arguments is equivalent to "-D -f guix.scm"
<abrenon>what ?
<abrenon>I thought the point of shell was to have a full environment ?
<abrenon>ohhhhh it's just for devel… ^^
<abrenon>sorry ^^' I completely misunderstood the post I was quoting earlier
<singpolyma>If you want the package in env use manifest.scm instead
<abrenon>hmmm so I suppose it's considered bad practice to put the package itself in manifest.scm ? because it alters the meaning of running "guix shell"
<abrenon>what ?
<abrenon>so that's the point of manifest ?
*abrenon is completely lost
<singpolyma>manifest.scm lets you specify exactly what packages you want
<singpolyma>guix.scm is a useful shorthand for getting a dev env on a packaged item
<abrenon>so is it ok to version and distribute in a repository a manifest which generates an environment where that package is installed ?
<abrenon>or should it be to provide a custom/fancy dev environment for that package (say, with emacs to make sure the indentation script will run…)
<singpolyma>I don't see why not, if that's useful in your context
<abrenon>ok, there's no particular semantics attached to "guix shell with no argument" ?
<singpolyma>The semantics are just "loads the default file and does whatever it does"
<singpolyma>I expect creating dev environments will be a popular case. That's what I mostly see nix-shell being used for
<abrenon>yeah, I used to do that in nix, because cabal was working there
<singpolyma>Oh, yeah, I think Haskell dev environments don't work in guix yet. I haven't found a way
<abrenon>but here I can't use it (complains about using environment variables overriding stuff…), so I simply rely on guix for the build and everything
<abrenon>exactly : )
<singpolyma>Definitely high on my list to figure out a fix
<singpolyma>I just taught myself how "new style cabal"
<singpolyma>Works this wek
<ajarara>roptat: repro'd in repl, `(eq? ((transform-package-source '("libssh=../lib-ssh")) guile-ssh) guile-ssh)`, I'm going to dig some more and see if I can get a fix
<abrenon>it doesn't really change anything, does it ? (except for the new- prefix and not creating sandboxes anymore)
<singpolyma>It doesn't even install packages to where ghc-pkg can see them anymore
<singpolyma>It puts all the dependency source in the new style dist dir and stuff like that
<abrenon>which is a nightmare to interface with ghc…
<abrenon>but since guix already does the job cleanly
<singpolyma>Yeah, I'm not really sure why they tried to reinvent the wheel here. They even call it "nix style"
<singpolyma>I may abandon cabal entirely, we'll see
<abrenon>I know right ? ^^
<singpolyma>I only liked cabal because it didn't do sandboxing or most package type things, and was mostly a build system
<apteryx>raghavgururajan: uh, gstreamer-player is a run time dependency of gtk 4 (not optional it seems)
<abrenon>so it looks like I'm back to the start, not knowing what to put where, and almost certain that I'm doing things wrong
<singpolyma>Maybe just guix + ghc --make is my future
<apteryx>so gtk@4 seems to depend non-optionally on gst-plugins-bad
<apteryx>which depends on qtbase
<apteryx>rad
<apteryx>perhaps we could drop the libde265 lib from gst-plugins-bad to alleviate that problem, if it's optional there
<abrenon>I didn't know about ghc --make !
<abrenon>that looks super convenient !
<Olivetree>jlicht: abrenon: I also have an issue with guix shell in /tmp, but not in some other directories. However, I do get the same error on a directory in my $HOME that's mounted from a different btrfs subvol. Maybe different mount points have something to do with it?
<apteryx>Olivetree: are you using --container?
<Olivetree>No
<abrenon>Olivetree: my "bug confirmation" was explained by civodul I think — it's not a bug, it was my misunderstanding the behaviour of guix shell (which, in auto-load mode, apparently creates a development environment and not a full environment like with -f guix.scm)
<abrenon>I find it confusing but if that's the way it's defined, I think it does work, within /tmp or not
<Olivetree>I htink you're talking about a different issue
<apteryx>civodul: had to redeploy a quick fix to a production machine today; 'guix deploy' was a fine tool to use again :-)
<Olivetree>If I use the same manifest.scm in different directories I get different behaviours
<abrenon>doesn't it use (load or something) a relative file which content differs between both directories ?
<Olivetree>it's just a bunch of python packages
<Olivetree>like (specifications->manifest '("python" "python-pytest" "poetry" "python-black" "python-mypy" "python-boto3" .... "python-xmltodict"))
<Olivetree>And by different I mean one loads properly, and the other churns out 2 messages of: guix shell: warning: no packages specified; creating an empty environment
<abrenon>I saw that one…
<abrenon>from within /tmp ?
<rekado>civodul: oh! I’m sorry!
<Olivetree>Yes, it happens in /tmp and %HOME/some-mount/ but not in $HOME/some-regular-dir
<abrenon>hmmm : /
<Olivetree>Curiously though, /tmp is not a mount point in my system
<Olivetree>So I might be way off.. gonna test some other things
<jlicht>Olivetree: glad we're not crazy :-). /tmp/some-dir does work for me though
<Olivetree>jlicht: $HOME/some-mount/tmp/ works for me as well
<abrenon>well, I sent my bug report and I'm going to call it a day
<abrenon>see y'all later
<roptat>hey rekado I think you might be interested in https://issues.guix.gnu.org/51351? pplacer is currently broken, and I found a way to fix it. Do you think you would be able to create another miracle and port it to a more recent ocaml again?
<Olivetree>jlicht: There goes my theory... I have a sibbling subvolume in which running guix shell works. It's in everyway similar to $HOME/some-mount/ of before
<Olivetree>If I run "guix shell -D -f manifest.scm" instead of only "guix shell" in one directory everything is fine, in another I get manifest.scm:1:1: error: specifications->manifest: unbound variable
<Olivetree>hint: Did you forget `(use-modules (gnu packages))'?
<Olivetree>in either directory, if I add (use-modules (gnu packages)) guix shell throws an exception
<Olivetree>In both directories guix environment -m manifest.scm works as expected
<Olivetree>Now I understand.. I needed to use `guix shell -m manifest.scm'... My bad. This one works correctly
<Olivetree>So summing up: in some directories `guix shell' says manifest.scm is not found but `guix shell -m manifest.msc' runs just fine!
<Olivetree>I meant to say `guix shell -m manifest.scm' runs just fine
<podiki[m]>is the new style package inputs in the manual somewhere I'm missing?
<roptat>podiki[m], I don't think it is, it's not merged in master yet
<podiki[m]>wondering how to do "gcc:lib" type input
<roptat>I mean, it's probably in the manual on core-updates-frozen
<podiki[m]>oh right, and web manual is from master
<podiki[m]>okay, found it
<podiki[m]>(must do a `(,gcc "lib") in the input list)
<GNUHacker>Help I cant build, Ive installed cmake, but print "No CMAKE_CXX_COMPILER could be found." How I do?
<jpoiret>looks like it cannot find a C++ compiler rather
<mekeor[m]>nckx: i finally found some time to propose to split the suckless-module: https://lists.gnu.org/archive/html/guix-devel/2021-10/msg00274.html
<nckx>I was literally just reading it when your notification distracted me ☺
<nckx>I'm not here officially, but I'll re-read & try to formulate an opinion tomorrow.
<nckx>Thanks!
<neutral>quit
<attila_lendvai>is there somewhere any example of a package downloading a platform dependent binary? i know it's against the philosophy of guix, but this is a special situation (go-ethereum, crypto stuff)
<singpolyma>I think build usually runs in a container with no network, but if you can download it in the phase that downloads the source it should work out
<attila_lendvai>apparently the binary runs on my guix when started as ~/.guix-profile/lib/ld-linux-x86-64.so.2 geth version
<attila_lendvai>singpolyma, yeah, that's my plan, but i was hoping i can copy from somewhere the dispatching on the target platform
<nckx>attila_lendvai: Yes, check out mit-scheme.
<nckx>I'm hella failing at lurking, so I'll close me client now. Night Guix o/
*attila_lendvai much appreciates nckx's failure, though
<vagrantc>running on foreign distro (Debian) with 0e6470b47f00470c213fbf20bddc5bcf1e2f8e2a (recent guix master) guix shell --pure --check --development guix guix git less ... complains about missing PKG_CONFIG_PATH variable ... then running guix shell --pure --development guix guix git less ... PKG_CONFIG_PATH is defined
*vagrantc confuzzzed
<GNUHacker>which package must I install to get libgd ?
<acrow>Isn't gd a perl package from way back?
<acrow>I'd look to see in cpan and then leverage the power of guix import cpan
<GNUHacker>idk
<GNUHacker>A program say me "libgd not found" :/
<GNUHacker>maybe is perl-gd in guix
<nckx>attila_lendvai: :) (And here I am back again, because I need to ask things. How the turntables.)
<acrow>perl-gd looks promising.
<nckx>GNUHacker: …it's just gd.
<nckx>‘libfoo is missing’ → installing foo (sometimes libfoo) is a good first guess.
<GNUHacker>thanks Im new in guix system
<nckx>It's not a Guix thing.
<singpolyma>nckx: you're still here ;)
<singpolyma>Oh, I see, you came back
<nckx>I am doing field research in ‘how it feels to seek support on IRC’, and it kind of sucks. #guix is a very active and helpful channel compared to some.
<GNUHacker>where I set enviroment vars GUIX_PROFILE="/home/user/.guix-profile" and . "$GUIX_PROFILE/etc/profile" ?
<nckx>I could close #guix but that feels wrong.
<nckx>GNUHacker: Simply ‘running’ that will set them, there's no difference. Just copy & paste immediately under the message.
<nckx>Unless, erm, maybe if you're using zsh or fish or something non-(ba)sh it won't work. I can't say.
<GNUHacker>Ive bash
<nckx>Then just copy & paste :)
<nckx>The new environment only needs to be explicitly set in *existing* shells. If you launch a new on (e.g., open a new terminal window) they will be up to date automatically.
<nckx>But Guix can't modify the environment of already-running processes, hence that hacky message.
<GNUHacker>must I copy this all times when I install packages?
<nckx>No. Only when Guix prints that message.
<neutral>put it in bash_profile
<nckx>No.
<florhizome[m]>Still trying to install wayfire...
<florhizome[m]>Well it installs but doesn‘t run. It fails to start with „can‘t find addr2line“ (some util)
<florhizome[m]>So the source paths seem kind of off.
<florhizome[m]>One thing might be, new wlroots needs a new meson so the „meson for build“ isn‘t used for the wlroots input?
<nckx>Don't do that.
<nckx>GNUHacker: Relatively few packages add new variables (‘search paths’ in Guix parlance) so the message should be rare.
<GNUHacker>oh ok
<GNUHacker>thanks
<singpolyma>Search paths are the mind killer
<podiki[m]>what is the easiest way to modify a build function? i'm playing with make-dynamic-linker-cache and wanting to change something in its function definition
<nckx>Adding it to any file is not supported, and you just plain shouldn't, at best it does nothing, and it probably leads to bugs somehow.
<jpoiret>how is guix pulled in when making an image? I've been searching the source to no avail. One thing I want to know is if it uses the current installed guix, or the guix package, or the guix you're using to `guix system image`
<nckx>s/it/the ‘GUIX_PROFILE=’ etc. lines/
<nckx>acrow: Mildly amusingly, gd supplies libgd.so, whilst perl-gd supplies GD.so. Just to confuse newbies.
<nckx>jpoiret: The guix package.
<acrow>Ah.
<jpoiret>nckx: ah, too bad. been wanting to add luks2 support but that'll mean using an installation image to install it in a vm rather than just producing an image
<florhizome[m]><nckx> "I am doing field research in ‘..." <- That’s true, though it’s so active some questions might end up never answered :>
<civodul>vagrantc: re "guix shell --check", could you gather details and send'em to the bug tracker?
<civodul>it launches an interactive shell, so .bashrc & co. are sourced
<vagrantc>debian's default .bashrc and such probably do some interesting things
<civodul>heh
<podiki[m]>simple (I think) question: how do I replace a build phase with a new function; I have it in the file as a (define* (the-new-thing...)) and then in the modify-phases try a (replace 'old-thing the-new-thing)
<podiki[m]>but get an unbound-variable error
<podiki[m]>(and building with a guix build -f thefile.scm in case that makes a difference)
<Olivetree>I know if I run guix home search . I can get a list of services, but how do I know how to use them?
<pkal>What is the best way to start a user shepherd? I want to make sure my ssh-agent service is configured so that all desktop processes see the right environmental variables.
<Olivetree>pkal: I would say this https://guix.gnu.org/en/manual/devel/en/guix.html#Shepherd-Home-Service
<pkal>Olivetree: Great, that looks like exactly what I wanted!
<nckx>florhizome[m]: I understand the frustration, but not everyone has an answer to every questions, and apparently some questions have none. It helps to give more useful info: not ‘some util’ but ‘a binary provided by binutils, but not found’, not ‘the source paths seem kind of off’ but the actual path & why. Vague statements that promise a long back & forth tend to discourage people who might pounce on an ‘Q: X? A: Y!’ question that the
<nckx>y feel is quick and easy to answer (even if they get sucked into a nerd snipe *after* :). Most people feel/are busy, not just staring at their IRC client. Anyway, not blaming you for the lack of responses at all (you are not to blame, nor is the channel), just giving some tips.
*nckx going to close their client, shut down their PC, superglue it shut, and throw it out of the window, so perhaps they will go → 😴💤
<florhizome[m]>I‘m not frustrated with anyone in particular. If I was pointing out something, it‘s that people can be super nice but still a lot gets thrown under the bus, because of the nature of a chat system where messages deprecate pretty fast.
<Olivetree>pkal: Glad I could help :)
<Olivetree>And to answer my own question from before. `locate <whatever file is in location field of the output of guix search>` is a good help, although one has to know guile
<the_tubular>docker-compose is broken :/
<the_tubular>It was updated yesterday
<the_tubular>There's a dependencies missing I think
<jpoiret>podiki[m]: note that when building, the build system doesn't have access to the whole file where you defined the packaged. Guix only sends the build phases themselves, so you can't reference a symbol outside of it. That's also the reason why the arguments are passed as a list.
<jpoiret>personally, if I do need some modularity, I just (define myfunc (quasiquote (lambda ...))) and then do ,myfunc in the arguments
<podiki[m]>jpoiret: okay. so I could inline that function within the package or load path maybe
<podiki[m]>right
<jpoiret>yes, you'd need to inline it. I'm not sure which modules can be used using the #:modules keyword of arguments
<florhizome[m]>Anyways, if anyone wants to help I would ofc post the scheme file and a backtrace. ofc I’m happy to provide more context... but it doesn’t make much sense to flood the room with that unless.
<florhizome[m]>On a broader note I wanted to point to maybe it makes sense at some point to open more channels to narrow topics on the individual ones... like one for packaging, one for system and services, one main for general stuff. But if and when I don’t know ;)
***namtsui_ is now known as namtsui
<podiki[m]>there's also help-guix (mailing list), perhaps a bit slower but visible in another way
<acrow>podiki: Regarding the unbound variable. Have you tried binding your function to a variable that is, literally, in the package with a let or let*?
<podiki[m]>acrow: no, but that also seems reasonable
<podiki[m]>I will try with these tips when I get back to it, thanks all
<podiki[m]> guix website the language drop down shows all "English" and then "Translate" at the bottom (links do go to other languages though)
***robin_ is now known as robin
***mark__ is now known as mjw