IRC channel logs


back to list of logs

<quiliro>hello... i have been fidling in the guile interpreter.... but i still do not understand what lambda does...i know it is an anonymous function ... that means it does not have a name... but what is its use?
<bandali>for one thing, lambdas are useful for writing quick one-off functions and passing them around, instead of defining a proper named one
<bandali>like, there’s a whole bunch of them in my emacs config
<Minall>bandali: Thanks, I think I needed that too... BTW, what's the difference between let and lambda?, can the two of the be used similarly?, to use variables and to get a result?
<bandali>Minall, you can use lambdas in conjunction with lets, to create a local binding with a name for your anonymous function, only valid inside that let’s scope
<bandali>in general let is used for creating local bindings with limited scope
<bandali>at least that’s my knowledge from elisp and haskell, i doubt it’d be much different in guile
<bandali>i’d recommend reading the manual though :)
<quiliro>thanks bandali...we are trying to understand
<Minall>Thanks bandali, you're very helpful!
<bandali>cheers quiliro and Minall :)
<bandali>that tutorial shows you how you would make functions using lambda, and bind them to a name using define
***slyfox_ is now known as slyfox
<bandali>but since named functions are so commons, it also shows you how to do it more concisely, but omitting the explicit lambda name
<bandali>*by omitting
<bandali>god damn i can’t type today
<raingloom>is there something that prevents build scripts from using open-file in the 'configure step? i'm trying to echo a line at the end of a file and i'm getting a "permission denied" error
<Minall>I'm getting an error: gpg : order not founded...
<Minall>On guixSD... What should I do?, is there a package that I need to install?
<bandali>what? when do you get that error?
<Minall>When I try to use gpg
<Minall>gpg --verify to be more specifc
<Minall>So maybe I just have to install something (this is a new guix system installation)
<quiliro>guix install gpg
<Minall>No package for gpg
<quiliro>sorry gnupg
<quiliro>guix installgnupg
<quiliro>guix installgnupg
<quiliro>guix install gnupg
<Minall>I'm installing it
<brettgilio>Hey all, I am trying to use guix without an X Server. I want to change some of the grub configurations like usually found in /etc/default/grub on Debian to change the GRUB_GFXMODE or GRUB_GFXPAYLOAD_LINUX values. I don't see the correlating option in the bootloader configuration for Guix, any advise?
<sneek>Welcome back brettgilio, you have 1 message.
<sneek>brettgilio, apteryx says: look at the #:include argument of the emacs-build-system. It is a list of regex which determine which files/directories get included. Example: emacs-elpy.
<Minall>How can I add a channel but not from github nor a url, but from a file in my pc?
<brettgilio>Minall: Use the -L flag
<Minall>brettgilio: How so? can you give me an example?
<brettgilio>See the documentation for invoking `guix build` additional options for an example, Minall
<brettgilio>Minall: Did you find it?
<Minall>brettgilio: I'm on it... Searching it lol
<brettgilio>Minall: Cool! If you know any answer to my question, let me know ;).
<quiliro>brettgilio: the idea is to avoid --install-from-file
<brettgilio>quiliro: -L is different from --install-from-file
<Minall>quiliro: It adds the directory actually, maybe what we want to achieve
<quiliro>GUIX_PACKAGE_PATH section on says to use channels instead after 0.16
<Minall>brettgilio: I used it now, Is my package definition visible now?
<brettgilio>Minall: It should be as long as the definition is in a well defined Scheme module in that directory you loaded using the flag.
<brettgilio>You can also have the Guix daemon configured to autoload that path so you dont have to specify the flag each time.
<brettgilio>The channels are really used public/private SSH/HTTPS repositories
<quiliro>what did you do Minall
<quiliro>or rather, how?
<Minall>brettgilio: I did guix build -L and my path, do I have to do something else as guix pull in order to do guix install 'my package'?
<brettgilio>Minall: Just use the -L flag in guix package -i
<brettgilio>so `guix package -i my-package -L /path/to/module`
<Minall>brettgilio: Yes but, in that case it would be the same as install from file
<Minall>What I'm trying to do is: add the package which I now is good, in a manner that using just guix install will see the package
<Minall>Like a channel
<quiliro>yes without defining the path on the command line
<brettgilio>Minall: Install from file doesnt generate a derivation. But I see what you are saying, but like I said, channels are for repositories. You can add load paths to the guix daemon, which in effect does the same thing as specifying -L.
<brettgilio>So, just modify your guix daemon configuration to look for packages in that directory too.
<brettgilio>I said this above :)
<Minall>I see now!
<Minall>Maybe there's a path I can specify for that?
<Minall>like GUIX_LOCAL_PACKAGES or such?
<Minall>where can I confirm this¡
<brettgilio>The guix daemon configuration is usually part of your system declaration.
<brettgilio>But Guix has documentation for working with the daemon.
<quiliro> `guix package -i my-package -L /path/to/module` is equivalent to `guix package --install-from-file=/path/to/module/my-package`
<reepca>brettgilio: the daemon doesn't know anything about packages AFAIK.
<brettgilio>quiliro: It really isnt.
<reepca>Minall: I believe the environment variable you're looking for is GUIX_PACKAGE_PATH
<brettgilio>reepca: Do you know a possible answer to my question above?
<quiliro>reepca: that is what i asked it is not replaced by channels
<quiliro>as said by the packaging tutorial i mentioned
<Minall>I did: export GUIX_PACKAGE_PATH="/home/Minall/Documents/Guix-Packages/"
<Minall>Inside that directory is the package definition I now is good
<reepca>brettgilio: Afraid not, sorry. I don't know much about the internals of Guix System.
<Minall>But doing guix install 'the package name' does nothing I'm afaraid
<reepca>Minall: could you paste your package module to
<reepca>er, .net, actually
<reepca>quiliro: GUIX_PACKAGE_PATH still exists as far as I can tell, it's just not the preferred solution usually - it's more of a quick-and-dirty solution. But I know it works for local files.
<reepca>The "proper" solution would be to figure out the syntax for specifying a local file in the url of a channel, but I can't remember it off the top of my head
<Minall>thanks guys! that was the thing: add the path to the GUIX_PACKAGE_PATH variable
<Minall>Now my package is seen
<quiliro>thank you
<Minall>I checked it and I had a little error on the syntax, after that, I putter well the variable, and it worked perfectly!
<reepca>On looking it up it looks like the way to specify that location as a url would be file:///home/Minall/Documents/Guix-Packages
<quiliro>reepca: we used that...unless there was synthax error...let us check
***jonsger1 is now known as jonsger
<Minall>reepca: can I give you my channels.scm?
<reepca>it's possible that our url-handling doesn't consider that scheme, in which case that would be a useful feature enhancement we should right down somewhere
<reepca>Minall: if you're okay with it
<quiliro>reepca: we tried
<quiliro>(directory "/home/Minall/Documentos/Guix-Packages")
<quiliro>(file "/home/Minall/Documentos/Guix-Packages")
<quiliro>(url "file://home/Minall/Documentos/Guix-Packages")
<quiliro>that is the problem
<quiliro>it should be
<reepca>yeah, it looks weird, but it needs the three slashes
<Minall>If you're going to say that there's an extra /,
<Minall>I added it because reepca did
<Minall>I tried without that extra hash too, but nope
<quiliro>(url "file:///home/Minall/Documentos/Guix-Packages")
<Minall>Yep, tried that
<reepca>what (if any) error does it produce when you try to run 'guix pull' with it?
<Minall>I just removed the extra hash to just have 2, but the same
<Minall>Invalid field specifier
<quiliro>no Minall it should be 3 if that is the way to do it
<Minall>Ok, I have three now but, it doesn't work lol
<Minall>Adding url at the beggining just to test didn't work with or withour the extra hash
<reepca>ah, yes, on line 4 of what you pasted, there should be "url" in front of that filename
<reepca>(it's complaining that it doesn't know which part of the channel definition this is)
<Minall>like this?:
<reepca>Minall: yep
<Minall>git error: couldn't find repository
<reepca>that's a start, it's getting farther in the process. Is /home/Minall/Documentos/Guix-Packages a git repository?
<reepca>if not, just make it one with git init
<reepca>is there a way to programmatically check whether a derivation built with (build-mode check) was found to be nondeterministic?
<reepca>does build-derivations return #f in that case?
<raingloom>did something break ghci? o_o
<raingloom>getting a bunch of errors about Sytem.IO when I try to start it
***spk121_ is now known as spk121
<dsmith>Howdy folks. Anyone here with ops that can /kick sneek_ ? I want to see what happens. The bot is currently stuck trying to change it's nick back
***dsmith is now known as sneek
***sneek is now known as sneek_
***sneek_ is now known as dsmith
***sneek is now known as sneek_
***sneek_ is now known as sneek
***sneek is now known as sneek_
***sneek_ is now known as sneek
<apteryx>where is the GNU Storage Guide?
<apteryx>do we have it availabel in Guix?
<apteryx>parted references it, but I can't find it
<rekado_>sneek: later tell Minall You can just use “/home/Minall/Documentos/Guix-Packages” in the channel definition.
<sneek>Got it.
*apteryx just asked on #gnu, which seemed more on topic there.
***chris3 is now known as chrislck
***ng0_ is now known as ng0
***chris4 is now known as chrislck
<glix>Hey, I am trying to run guix on VM using QEMU following : the output I get after running the command listed there is :
<glix>nvm i am dumb...there was a typo
<g_bor>Hello guix!
<g_bor>roptat: I've managed to the point that I finished the installation of guix-home-manager.
<iv-so>success story?
<g_bor>iv-so: so far yes.
<g_bor>I am solving the small nuances right now.
<ng0>I'm preparing a gnurl update right now. Compared to the version in guix git there were some recent changes which might enable you to drop dependencies. Do you want me to spin up a Linux VM with guix set up to do the patch, or does anyone else want to look into it once I have 7.65.3 out?
<ng0>I'm not 100% positive about this, but I think at least groff is no longer a hard requirement
<rekado_>ng0: however you want to contribute (VM or otherwise) — a patch would be welcome.
<ng0>ok. I'll look into it when I have it updated in pkgsrc. It's probably more fair since I get paid for the work on it and distribution counts towards it.
<raghavgururajan>Hello Guix!
<raghavgururajan>Do anyone else notice system lag right after opening ungoogled-chromium?
<ng0>oh. I have high hopes that the commits I've just read mean that python-2 can be changed to python-3 .. testing it now :)
<ng0>yeah. works without python-2, at least when python3.7 is brought into scope explicitly. If the tests for this configuration even require python is another question.
<Minall>Hello guix!
<Minall>What you do you think one has to have in its config.scm always?, any suggestions?
<bzp>hi guys
<bzp>does anybody use pactl in i3 to increase and to reduce the volume?
<bzp>how does it do so that the key expresses a sound to the precionar to know if I increase or reducio the volume?
<quiliro>Minall: hola
<quiliro>Palpares: better 'guix'
<quiliro>Hi guix!
<quiliro>Hi Guix!
<quiliro>guix as of us
<quiliro>Guix as of the package manager
<quiliro>Guix System as of the GNU distribution
<ilikeheaps>What are the options for running Guix with other package managers? I'm running Guix with foreign distro now but I'd prefer it to be the other way -- obviously it just can't work like that
<ilikeheaps>Does keeping another OS in a container sound reasonable? I just want to have a fallback manager that will have most packages
<ilikeheaps>(actually another distro and not whole OS)
<erudition>You can install nix on guixSD. It'll have most packages
<ilikeheaps>Oh, sounds reasonable
<erudition>But yeah it would be nice if there was a way to install apt or something
<ilikeheaps>And I think Haskell has better cooperation with Nix so that's a plus for me as well
<erudition>At the moment, yep
<bavier>ilikeheaps: guix has packages for several other 'package managers', e.g. rpm
<ilikeheaps>But actually -- isn't converting packages from Nix to Guix fairly easy? I don't know much about packaging though so that might be nonsense
<bavier>ilikeheaps: conda, flatpak, stow, cabal, cpan, pip, ...
<erudition>Converting from most things is 'easy', unfortunately it's always a step above 'trivial' and you'll run into some difference that takes a while to reconcile
<erudition>At least, That's what I gather from watching this irc for a long time
<ilikeheaps>Okay, thanks
<jollyjester>hello, if anyone has experience with guixsd, how can i disable GDM, also i would like to know how to fix errors at startup telling me that dbus-daemon failed to activate org.FreeDesktop.[something]
<tune>and then you might need (srfi srfi-1) under use-modules
<tune>from my own config, can't claim to understand it but it works
***chris3 is now known as chrislck
<jollyjester>doesn't seem to work
<jollyjester>guix system: error: failed to load 'config.scm':
<jollyjester>ice-9/boot-9.scm:1695:9: In procedure read_inner_expression: /home/eon/config.scm:10:20: unexpected ")"
<Minall>Hello guix!
<Minall>I'm trying to make a package definition, but It doesn't work, I¿m getting an error of: did you forget: 'use-modules', and I'm trying to add the module it says, but no luck
<g_bor[m]>Hello guix!
<g_bor[m]>Minall: it might be that the module hint is off.
<g_bor[m]>What is missing, and what module is suggested?
<Minall>It says that guix packages is missing,
<Minall>But I'm trying to add it though
<Minall>Can I give you the paste?
<Minall>I'm trying to make a custom linux kernel with the blog guix custom linux kernel
<jollyjester>well what can i do to fixi t?
<jollyjester>i just want gdm removed
<g_bor[m]>Minall: is this in a file, and you would like to build it with guix build -f?
<Minall>Yes, to build it of course,
<Minall>But it gives the error of the module
<g_bor[m]>jollyjester: I looked at you paste, and it seems to have some parenthesis mismatches. Try to fix those first. If you need more help with that you can come back to me. At least the use modules is missing one paren.
<Minall>What I'm trying to do is to make a custom linux kernel with my own .config file, and getting most important things from the linux-kernel package, such as version or hash?
<Minall>Are you talking about my paste or other thing?
<g_bor[m]><g_bor[m] "jollyjester: I looked at you pas"> Minall: I did not read the post, but the presented file is really missing the modules. See this for a full example:
<g_bor[m]>You should change the module for the database for the one providing linux-libre.
<Minall>thanks g_bor[m], you're very helpful, but what do you mean with 'you should change the module for the database for the one providing linux-libre?
<jollyjester>g_bor[m] what paren? i kept adding paranthases and removing but it still gives me errors
<jollyjester>ice-9/eval.scm:223:20: In procedure proc:
<jollyjester>error: %desktop-services: unbound variable
<jollyjester>hint: Did you forget a `use-modules' form?
<g_bor[m]>jollyjester: ok, please move the remove behind the use service modules form. That will bring desktop services into scope.
<sebboh>hi guix.
<g_bor[m]>Minall: you see simething like gnu packages database in my use modules. For you it should be something like gnu packages linux
<g_bor[m]>sebboh: hi
<Minall>Ok!, you mean that define-modules is wrong there?
<jollyjester>g_bor[m] what do you mean move? where should i move it?
<ng0>hmmm... has anyone set up Guix System on bhyve before? If not, are you interested in noted I can provide or a blog article? I'm not sure if this is interesting enough.. this would be the Bhyve hypervisor on FreeBSD, but using a wrapper around it called `vm`.
<g_bor[m]>jollyjester: move the rows starting with remove behind the use-service-modules. The use-service-modules desktop is like an include defining the %desktop-services global variable. The variable is unbound before that, giving the error. Does that make sense?
<jollyjester>g_bor[m] nope not at all can you do that for me? just modify it and upload it to 0bin again
<jollyjester>it would be much better and easier to do it like that than explaining it to me
<ng0>ping me if you think it's good enough, otherwise I'll just write about it on my website when I'm done with it
<jollyjester>hmmmm i have no idea how to fix this
<g_bor[m]>jollyjester: try it like this.
<g_bor[m]>I moved the lines behind, and also removed the two extra parenthesis after the %desktop-services.
<g_bor[m]>jollyjester: also, you should use remove! if you would like to use it like this.
<g_bor[m]>jollyjester: sorry, my bad, that is just not correct.
<g_bor[m]>what you should do is:
***jonsger1 is now known as jonsger
<dongcarl>Hi all, I'm wondering how the "$GUIX_ENVIRONMENT" folder is constructed inside a `guix environment --container --pure`
<dongcarl>For example, when I invoke: `guix environment --container --pure --ad-hoc mingw-w64`, I see that in the manifest, there are no search paths for `mingw-w64`
<dongcarl>actually scratch that
<dongcarl>is "$GUIX_ENVIRONMENT" just a union directory of all the package outputs that we requested to be in the environment?
<bavier>dongcarl: 'guix environment' creates a standard guix profile, and drops you into a shell/container where that profile is active
<dongcarl>bavier: Right, but how is "$GUIX_ENVIRONMENT" constructed?
<bavier>dongcarl: a directory union of the requested packages' store directories
<dongcarl>bavier: Okay, and say that there are conflicting names for the stores, which one takes precedence?
*dongcarl has been, is, and always will be thankful for explanations
<bavier>you'll get warnings in that case, and one will be chosen, but I don't know how
<bavier>i.e. it's deterministic; I just forget the criteria
<efraim>I think the first one wins
<dongcarl>bavier: Okay, another question: for cross compilers, I see that the gcc cross compiler's store directory has something like: `/gnu/store/blahblah-gcc-cross-sans-libc-x86_64-linux-gnu-5.5.0/lib/gcc/x86_64-linux-gnu/5.5.0/crtbegin.o`, BUT "$GUIX_ENVIRONMENT/lib/gcc/x86_64-linux-gnu/5.5.0/crtbegin.o" doesn't exist. Why is that?
<dongcarl>(this is in an environment which has the cross compiler declared in its manifest)
<dongcarl>$GUIX_ENVIRONMENT/lib/gcc/x86_64-linux-gnu/9.1.0/crtbegin.o exists, however, which is from another package in the manifest... (sorry this is a very weird manifest)
<dongcarl>so there's something odd with conflict resolution here
<dongcarl>But I presume that the general assumption is that the environment won't contain multiple toolchains
<davexunit>dongcarl: sounds to me like gcc is in your profile, but not libc
<dongcarl>davexunit: You underestimate my profile :p
<davexunit>well then I dunno. I've had similar issues that I've fiddled with before. :)
<bavier>anyone have experience working with glib schemas?
<bavier>I have a package that tries to load its own schema at runtime from an absolute path, which doesn't work great with our schema profile hooks
<bavier>if I run glib-compile-schema to produce the expected schema, will that interfere with the guix profile schema in any way?
<sebboh>I have done a lot of `guix package -i ...`. Now, can I somehow 'export' this activity to a config.scm? So I can build a clone of this machine elsewhere?
<mbakke>sebboh: there is a 'manifest-to-manifest' script somewhere on the interwebs that takes the generated profile manifest and makes it into a proper manifest that you can use to replicate the profile.
<sebboh>mbakke: ooh