IRC channel logs


back to list of logs

<ufjvp>I just ran the same command without adding the channel and got the same error, so I guess it doesn't work because of some other reason
<lfam>Hm, I'm not sure ufjvp. Something is amiss
<maav>Rovanion: usually nobody is using them, as the build phases usually don't look at specific dependencies, but you can refer to them on a customized phase with (assoc-ref inpus "input-name")
<maav>or (assoc-ref %build-inputs "input-name") for configure flags, IIRC
<ryanprior>Rovanion: the left-hand side is a hash key
<ryanprior>It would be nice if you could omit it in cases where you don't care
<ufjvp>lfam: Okay, thanks anyways. I'll try to build a new installation image tomorrow and see if that helps
<Rovanion>I'm not sure how Scheme works, but I've used Clojure quite a bit. If one were to stick a macro in there you could capture the symbol/name as well as its value. (For a future API)
<ryanprior>The reason you would care is if you need to refer one or more inputs during a build phase. For example, you might want to copy files from inputs into your build tree.
<ryanprior>A macro could definitely clean it up. I am useless at writing Guile macros though, I've read and re-read the docs and looked at lots of examples nothing's clicking.
<leoprikler>I have mixed feelings about using a macro there. On the one hand, yes, it would make typing simpler, on the other it would be a burden to read in many cases and a real hassle when you want to reference the input
***lukedashjr is now known as luke-jr
<rekahsoft>Hi all, I would like to use the latest commit off of master for emacs-treemacs-extra, which implies I need to modify emacs-treemacs as emacs-treemacs-extra inherits from it. The best way I can think of doing this is defining a emacs-treemacs-<commit> package which inherits from emacs-treemacs to use the appropriate version, then also define another package emacs-treemacs-extra-<commit> that inherits from my emacs-
<rekahsoft>eemacs-<commit> package. Is there a better way to do this?
<ryanprior>leoprikler: I picture a macro like ((symbol [optional string for name]) ...) that would get transformed into `((,(or name (package-name symbol)) ,symbol) ...)
<ryanprior>So what you'd specify now as (inputs `(("mypkg-5" ,mypkg) ("libfoo" ,libfoo)) could instead be (mypkg libfoo), and if you want to refer to libfoo by a special name, then (mypkg (libfoo ""))
<ryanprior>In some other lisps I'd feel confident in putting such a macro together as a proposal, and I may give it yet another shot in guile here some time, but my attempts thus far have ended in defeat.
<ryanprior>rekahsoft: there's CLI flags to do what you want I think! Something like: guix package --with-branch=emacs-treemacs-extra=master --with-commit=emacs-treemacs=<commit> -i emacs-treemacs-extra
<leoprikler>Now do outputs
<ryanprior>leoprikler: I haven't figured out outputs at all and need to to do, because I'm packaging a number of things in go-land that have a bunch of outputs from one repo
***sneek_ is now known as sneek
<Guest67>Happy Holidays everyone. I need help in "activating' an emacs package; pdf-tools. I installed it using Guix repos and the command will not show up after M-x. I already tried to put either (pdf-tools-install) and (pdf-loader-install) in .emacs but I kept running into errors saying that the command is void.
<Guest67>I've also tried guix-emacs-autoload already
<Guest67>BTW I'm using EXWM if that matter :-)
<ryanprior>Guest67 (IRC): I use (add-to-list 'load-path "/home/ryan/.guix-profile/share/emacs/site-lisp/") in my emacs init file to make sure it can find packages
<Guest67>Thanks Ryan, I will try that.
<ryanprior>I think Guix is supposed to somehow help Emacs discover packages you've installed, but either that doesn't work for me or I actively did something that broke it
<bqv>ERROR: 1. &openpgp-unrecognized-packet-error: #<input: string 7fd50a9753f0>
<bqv>This, on guix pull... Any thoughts?
<lfam>Hm, that's a new one
<lfam>If you'd like assistance, please provide the output of `guix describe` and the full command that you ran along with all of its output
<lfam>You can put it on <>
<lfam>I wonder if it isn't a network problem (corrupted data)
<ryanprior>Sounds like a network issue to me. Try again in a few minutes.
<bqv>lfam: guix describe: error: failed to determine origin hint: Perhaps this `guix' command was not obtained with `guix pull'? Its version string is 1.1.0-16.d3eee3c.
<bqv>I'm getting that... not sure why, pretty sure that was a guix-pulled guix
<lfam>That's strange
<lfam>It's a rather old Guix. From July
<bqv>I think its cause I started using %default-channels in channels.scm
<lfam>There shouldn't be any situation where `guix pull` makes you go backwards. That would be a serious bug
<lfam>I'm curious,what is the result of `which guix`?
<bqv>I haven't pulled for ages and I think I had it pinned since july
<bqv> /gnu/store/na1ywrrr5ibg9l9y0v9p6090p2bj45jf-profile/bin/guix
<bqv>(was complicated to answer, but it is a real guix)
<lfam>It should be something like `/home/bqv/.config/guix/current/bin/guix`
<bqv>lfam: thats why I said complicated, I'm not using guix in a very healthy way
<lfam>I see
<lfam>Warranty is void :)
<bqv>Its mostly fine! I have a profile, etc
<bqv>That profile is linked to .guix-profile etc
<kozo[m]><bqv "I think its cause I started usin"> Are we not supposed to use default channels in channels.scm?
<kozo[m]>I've always done so
<bqv>I think so too, tbh, but its a weird coincidence that it breaks now
<lfam>It's likely to do with your unusual setup
<bqv>Actually I can pull fine if I remove other channels from channels.scm
<bqv>So I doubt that
<bqv>I'm updating the guix channel on its own now
<bqv>I have a load of other problems due to that, but the pull issue I don't think is one :D
<rekahsoft>ryanprior: Thank you! Thank along with the docs ( should be enough to get me going.
<ryanprior>rekahsoft: cool, if you get it working I'd love to see exactly what you did, I'm still figuring out transformations and gexps myself
<donotshake[m]>Currently using proxmox, ansible, and a few bash scripts to run my environment. I read the Ganeti blog and am interested in switching. Problem is my devops is mostly crude automation using cron and bash. It works great, but isnt declarative. With guix I see a way to define my entire environment in 1 place, maybe using a got service for it all.
<donotshake[m]>I get this is basic devops shit but would extremely appriciate a guix example page with various environments one could deploy in a test lab. The manual is great, im just too lazy to build it myself beyond what I have which seemed easy.
<donotshake[m]>Also making the guix installer / system.scm script generator available online is a great idea. Click all the things, get scm to run.
<ryanprior>donotshake: I'm also an Ansible user who would like to switch some workflows to use Guix, but I haven't worked out how to manage service deployments yet. I could also use that example page with a test lab.
<ryanprior>There's a bunch of stuff of varying quality at which may get you started!
<ryanprior>For example it has an example of setting up nginx with Guix, that's a devops standard:
<ryanprior>But then there's a lot of ";; …" and I have no idea how to fill in those gaps :\
<raghavgururajan>>leoprikler‎: raghavgururajan: Do you have anything still left over or is everything lost?
<raghavgururajan>Nothing after GNU Shred
<bqv>lfam: ah, so guix describe just fails cause it relies on checking the argv0 and I have guix wrapped, I think
<bqv>lfam: otherwise, updating guix solved the pull issue
<lfam>I'm glad it's working now
<rekahsoft>ryanprior: Sounds good! Still haven't got it working yet. Have something that I expect to get working, but having odd issues with something simple that I would expect to work: 'guix build --with-branch=emacs-treemacs=master emacs-treemacs'. This ends up with a failed build saying that chmod is missing..
<leoprikler>raghavgururajan: ouch
<abcdw>leoprikler, tried to use mixed-text-file, again it was not what I expected) it inserts the path of the file, but I need the content of the file. Is it possible to achieve somehow without using gexp/ungexp?
<leoprikler>abcdw: Inserting the path of the file is all you need – pa script has the ".include" metacommand.
<abcdw>leoprikler, ok, it's reasonable) but in general case, when configuration language doesn't support includes?
<leoprikler>Then you need to some trick to extract the file contents, which probably takes some gexping.
<abcdw>ok got it, thank you for the help!
<leoprikler>but assuming you have your dandy little helper function called "file-contents" you can do (mixed-text-file (file-contents <some gexp>) "my text here")
<Rovanion>I've added quazip from compression to my package as a native-input but unlike other dependencies I've added this one isn't picked up by cmake/pkgconfig. Any ideas as to whi that could be?
<Rovanion>Here's the package definition:
<maav>IIUC, all of these except perhaps pkg-config must be inputs, not native-inputs
<maav>(you want to link against them the resulting package)
<Rovanion>Yeah probably, thought I would start out with everything as just a build input and only pass them on as long as the linker failed. But that could be a long process.
<Rovanion>Huh, wait: It managed to both detect quazip and not do it at the same time...
<cbaines>the linker wouldn't fail, it's more of a cross-compilation issue
<Rovanion>Will be compiled with QuaZip support: YES. Will use system QuaZip: NO.
<mroh>Rovanion: perhaps, you need to add a configure-flag, something like "-DUSE_SYSTEM_QUAZIP=true" or so.
<Rovanion>Wait, it could be wether it will compile using the "Linux distributions"/system quazip rather than one provided by some other mean...
<Rovanion>Found this in the source code: ttps://
<Rovanion>mroh: That could work. If it turns out that I need it now that I've seen that there are two lines that mention QuaZip.
<Rovanion>Thanks for the help.
<Rovanion>But I am getting a build error for undefined reference to Quazip.
<Rovanion>Have to go now, but will return later today.
<gnutec>Weechat works good but Wechat don't. Is it still that problem about Hong Kong?
<gnutec>This song. (Snyder's cut)
<gnutec>Tips: guix package -i emacs-2048-game xcalc gnome-chess
<raghavgururajan>sneek, later tell rekado: I was not able to find anything regarding your issue with librem laptop. But I will keep looking and will let you know if I find anything.
<nly>merry christmas
<dftxbs3e>hello! would it be technically possible you think for GNU Guix packages to refer to dependencies packaged in older versions of GNU Guix itself?
<dftxbs3e>(similar to time-machine)
<davidl>dftxbs3e: thx for the Nextcloud links, I tried it out, and managed to compile 2 different versions of it, but they both fail at runtime with [ fatal default ]: Could not find QtWebEngineProcess where I am currently stuck at.
<davidl>I installed a childhurd but I need to increase the disk-space on it bcz installing packages always fails with no disk space left. So I tried to install gptfdisk and thought I could add some disk space and fix stuff, but not enough space to install gptfdisk either - how can I fix this for a childhurd service? or do I need to build a hurd-VM if I want something to fiddle with?
<davidl>a separate* hurd-VM
<mroh>davidl: I just fixed the same error for another package (kiwiki-desktop). Perhaps a fix for your packages might be similar to this:
<davidl>mroh: yeah it seems like that would help - Ill try that! Thanks!
<leoprikler>dftxbs3e: Not sure, but imo you'd simply package an older version most of the time
<davidl>mroh: dftxbs3e (define-public mypackage (let pkg-older-version (package (inherit pkg (redefine version ... ))) (<mypackage goes here> )) ?
<davidl>dftxbs3e: how about (define-public mypackage (let pkg-older-version (package (inherit pkg (redefine version ... ))) (<mypackage goes here> )) ?
<davidl>mroh: Now nextcloud-desktop starts! Wohoo!
<davidl>version 3.1.1 by the way
<janneke>davidl: the childhurd configuration has a disk-size option; see
<allan`>Hello, I am trying to write a cron job that starts the program powertop on boot, but I am getting the error "wrong type argument", and I'm not sure what it means. Any thoughts? Here is the code I wrote.
***spk121_ is now known as spk121
<aecepoglu[m]>I'm going to share a Golang package with the community. It's an executable. Should it still share the `go-github-com-<username>-<repo-name>` naming scheme? I have named my library dependencies that way but I felt like the executables may have an exception?
<ryanprior>aecepoglu: you can name it according to its common name, the go-* naming scheme is not a rule. It's just convenient for the voluminous supporting libraries.
<ryanprior>aecepoglu: thank you for sharing the package. I'd be happy to review it if you'd like, I've been doings lots of go packaging myself.
<aecepoglu[m]>oh, how do I submit it personallyfor you to review?
<ryanprior>Also, if you're doing more go packaging, I wrote yasnippets that it much less labor intensive.
<aecepoglu[m]>should I email you a diff of?
<ryanprior>If you want to submit it privately, you can email me a diff. Or you can upload it somewhere public and link me.
<aecepoglu[m]>I have ported around 5-6 things to guix in the last week so the effort is in the past now :) I'll look into yasnippets
<aecepoglu[m]>One by one they need to be shared
<ryanprior>My snippets are in this repo:
<ryanprior>The readme has descriptions.
<aecepoglu[m]>I remember seeing #f being used in place of a nonexistent license (MIT)
<aecepoglu[m]>ryanprior: please ignore the previously posted paste :S
<elais>question: when doing `guix import elpa -a melpa marginalia` I receive an error because origin/master can't be found (marginalia uses the trendy "main" default branch name). Where should I raise the issue because its not really a bug so much as there are some repositories out there that don't use master. I noticed that in guix/git.scm we hardcode master as the default value when pulling from remote git repositories.
<ryanprior>aecepoglu: for MIT license what you want is "license:expat"
<ryanprior>Guix uses "expat" as a catchall for MIT, BSD-2, BSD-3, and various trivial variations.
<Rovanion>How come?
<ryanprior>Names that are code symbols, like "gofeed.Parser", should be wrapped like "@code{gofeed.Parser}"
<aecepoglu[m]>Btw, is there an equivalent of "pacman -F /path/to/file" to find which package a file belongs to?
<ryanprior>Rovanion: I am not a lawyer but according to they are the same thing
<ryanprior>I don't know why one name is preferred over the other.
<ryanprior>aecepoglu: there is no such equivalent yet, it is much-requested and cbaines is working on it iirc.
<jlicht>Rovanion, ryanprior: has a short explanation on why this stuff is referred to as the expat license
<ryanprior>Thank you jlicht :)
<ryanprior>aecepoglu: people will probably complain about a description for urfave/cli like "simple, fast, fun" since it sounds like marketing.
<ryanprior>I don't have any problem with it, and I don't know if there's an official Guix policy against marketing in package descriptions, but people have made such complaints to me in the past.
<aecepoglu[m]>:/ It's difficult to come up with a description for a package that is a dependency of an executable that I use sometimes :)
<ryanprior>(sha256 "1sqc53n7lf6w6dvqwsq251w5vg1vwvq8yl0sg2ygi6550v7igh3d") in go-xq doesn't look right, do you need base32 in there? Does it actually work as-is?
<aecepoglu[m]>And as I said, could you please save your efforts on giving feedback for the above posted diff :)
<ryanprior>aecepoglu: I sympathize! It's part of the job though. I'd say something like "Utility for building command line applications in golang." Generic but true and helpful.
<ryanprior>Okay I'll hold off until you share another update =D
<aecepoglu[m]>not so much for the update but it was a diff I got for simply the wrong package :)
<aecepoglu[m]>ryanprior: sha256 works as is, yes.
<aecepoglu[m]>Here is the first package I want to submit. It isn't a go package like I initially described tho
<ryanprior>aecepoglu: it's quite deeply nested, I think a few newline-and-reindent operations could keep the lines from getting so long
<aecepoglu[m]>not semantic unnesting, but aesthetical. Do I get it right?
<ryanprior>Correct. I don't think it's unreasonably nested semantically speaking.
<ryanprior>On line 40 you use car and cdr to destructure your files and destinations. Idiomatic Guix code doesn't use those, preferring instead to use pattern matching ie
<cbaines>I think indented is the word you're looking for
<cbaines>There's a script for formatting code which might help
<aecepoglu[m]>oh I haven't used pattern matching in scheme. Let me see
<ryanprior>cbaines: yes exactly, quite indented.
<ryanprior>aecepoglu: you can remove the /boxes.git from the url on line 27.
<ryanprior>I'm also not clear on why you hoisted "/etc" to a variable that's much longer than /etc
<aecepoglu[m]>:) because I was gonna re-use it?
<aecepoglu[m]>in make-flags and in the custom install phase
<ryanprior>Sure, but it's much shorter to just type "/etc" each time.
<aecepoglu[m]>I was worried less about the length but more about how those two had to correspond to the same value
<ryanprior>I think it's easier to read if you put the actual path in there instead of making it a variable.
<aecepoglu[m]>I disagree but I understand. I'll change it accordingly
<ryanprior>I don't make any rules or have any authority in Guix so feel free to ignore any of my suggestions, I'm wrong about things all the time and it won't hurt my feelings =D
<aecepoglu[m]>:) I've made all of the changes except for the car-cdr'in of a tuple list to copy some files. Just sent the email. Lets see how it goes
<ryanprior>Congrats & thank you for the submission!